jBPM4.4
下一页jBPM4.4
用户手册翻译官方文档JBossjBPMTeams4.4
译者:Lingo
首页:www.family168/
论坛:old.family168/bbs
EMAIL:lingosurf168@gmail
2009年11月1日
1.导言
1.1.许可证与最终用户许可协议
1.2.下载
1.3.源码
1.4.什么是jBPM
1.5.文档内容
1.6.从jBPM3升级到jBPM4
1.7.报告问题
2.安装配置
2.1.发布
2.2.必须安装的软件
2.3.快速上手
2.4.安装脚本
2.5.依赖库和配置文件
2.6.JBoss
2.7.Tomcat
2.8.Signavio基于web的流程编辑器2.9.用户web应用
2.10.数据库
2.10.1.创建或删除表结构
2.10.2.更新已存在的数据库
2.11.流程设计器(GPD)
2.11.1.获得eclipse
2.11.2.在eclipse中安装GPD插件
2.11.3.配置jBPM运行时
2.11.4.定义jBPM用户库
2.11.5.在目录中添加jPDL4模式
2.11.6.导入示例
2.11.7.使用ant添加部分文件
3.流程设计器(GPD)
3.1.创建一个新的流程文件
3.2.编辑流程文件的源码
4.部署业务归档
4.1.部署流程文件和流程资源
4.2.部署java类
5.服务
5.1.流程定义,流程实例和执行
5.2.ProcessEngine流程引擎
5.3.Deployingaprocess部署流程
5.4.删除流程定义
5.5.启动一个新的流程实例
5.5.1.最新的流程实例
5.5.2.指定流程版本
5.5.3.使用key
5.5.4.使用变量
5.6.执行等待的流向
5.7.TaskService任务服务
5.8.HistoryService历史服务
5.9.ManagementService管理服务
5.10.查询API
6.jPDL
6.1.process流程处理
6.2.控制流程Activities活动
6.2.1.start启动
6.2.2.State状态节点
6.2.2.1.序列状态节点
6.2.2.2.可选择的状态节点
6.2.3.decision决定节点
6.2.3.1.decision决定条件
6.2.3.2.decisionexpression唯一性表达式
6.2.3.3.Decisionhandler决定处理器6.urrency并发
6.2.4.1.使用fork实现并行分支
6.d结束
6.2.dprocessinstance结束流程处理实例
6.2.dexecution结束流向
6.2.dmultiple多个结束
6.2.dState结束状态
6.2.6.task6.2.6.1.任务分配者
6.2.6.2.task候选人6.2.6.3.任务分配处理器
6.2.6.4.任务泳道
6.2.6.5.任务变量6.2.6.6.在任务中支持e-mail
6.2.7.sub-process
子流程6.2.7.1.sub-process变量
6.2.7.2.sub-process外出值
6.2.7.3.sub-process外向活动
6.2.8.custom6.3.
自动活动
6.3.1.java
6.3.2.script脚本
6.3.2.1.scriptexpression脚本表达式
6.3.2.2.script文本
6.3.3.hql
6.3.4.sql
6.3.5.mail6.4.Commonactivitycontents
通用活动内容
6.5.Events事件
6.5.1.事件示例
6.5.2.事件传播
6.6.异步调用
6.6.1.异步活动
6.6.2.异步分支
6.7.用户代码
6.7.1.用户代码配置
6.7.2.用户代码类加载器
7.Variables变量
7.1.变量作用域
7.2.变量类型
7.3.更新持久化流程变量
7.4.声明变量
7.5.变量历史
8.Scripting脚本
9.Configuration配置9.1.工
作日历
9.2.Console控制台
9.3.Email
A.修改日志
下一页上一页下一页
1.
康爱媛
kayzhan168@gmail
徐会生
xyz20003@gmail
2.
jBPM4beta1
2009年4月9日
TomBaeyens
延迟了9天发布
jBPM4beta2
2009年5月11日
TomBaeyens
延迟了11天发布
jBPM4CR1
2009年6月5日
TomBaeyens
延迟了5天发布
jBPM4GA
2009年7月10日
TomBaeyens
延迟了10天发布
上一页下一页
jBPM4.4用户手册起始页第1章导言1
上一页下一页第
1章导言最好使用firefox浏览这份教程。在使用internetexplorer的时候会有一些问题。1.1.许可证与最终用户许可协议jBPM是依据GNULesserGeneralPublicLicense(LGPL)和JBossEndUser
LicenseAgreement(EULA)中的协议发布的,请参考完整的LGPL协议和完
整的最终用户协议。1.2.
下载可以从sourceforge上下载发布包。
sourceforge/projects/jbpm/files/1.3.
源码可以从jBPM的SVN仓库里下载源代码。
/repos/jbpm/jbpm4/1.4.
什么是jBPMjBPM是一个可扩展、灵活的流程引擎,它可以运行在独立的服务器上或者嵌
入任何Java应用中。1.5.
文档内容在这个用户指南里,我们将介绍在持久执行模式下的jPDL流程语言。持久执
行模式是指流程定义、流程执行以及流程历史都保存在关系数据库中,这是
jBPM实际通常使用的方式。
这个用户指南介绍了jBPM中支持的使用方式。开发指南介绍了更多的、高级
的、定制的、没有被支持的选项。1.6.从jBPM3升级到jBPM4没办法实现从jBPM3到jBPM4的升级。可以参考开发指南来获得更多迁移的
信息。1.7.
报告问题在用户论坛或者我们的支持门户报告问题的时候,请遵循如下模板:
=================================
-jBPMVersion:你使用的是哪个版本的jBPM?
-Database:使用的什么数据库以及数据库的版本
-JDK:使用的哪个版本的JDK?如果不知道可以使用'java-version'
查看版本信息
-Container:使用的什么容器?(JBoss,Tomcat,其他)
-Configuration:你的l中是只导入了jbpm.jar中的
默认配置,
还是使用了自定义的配置?
-Libraries:你使用了jbpm发布包中完全相同的依赖库的版本?
还是你修改了其中一些依赖库?
===Process==================================
这里填写jPDL流程定义
===API===================================
这里填写你调用jBPM使用的代码片段
===Stacktrace==============================
这里填写完整的错误堆栈
===Debuglogs==============================
这里填写调试日志
===Problemdescription=========================
请保证这部分短小精悍并且切入重点。比如,API没有如期望中那样工作。
或者,比如,ExecutionService.SignalExecutionById抛出了异常。
聪明的读者可能已经注意到这些
问题已经指向了可能导致问题的几点原因:)
特别是对依赖库和配置的调整都很容易导致问题。这就是为什么我们在包括安
装和使用导入实现建议配置机制时花费了大量的精力。所以,在你开始在用户
手册覆盖的知识范围之外修改配置之前,一定要三思而行。同时在使用其他版
本的依赖库替换默认的依赖库之前,也一定要三思而行。上一页下一页
起始页第2章安装配置2
上一页下一页第
2章安装配置
2.1.发布只需要把
jBPM(jbpm-4.X.zip)下载下来,然后解压到你的硬盘上的什么地
方。你将看到下面的子目录:?
doc:用户手册,javadoc和开发指南?examples:用户手册中用到的示例流程?install:用于不同环境的安装脚本?lib:第三方库和一些特定的jBPM依赖库?src:源代码文件?jbpm.jar:jBPM主库归档?migration:参考开发指南2.2.必须安装的软件jBPM需要JDK(标准java)5或更高版本。
java.sun/javase/downloads/index.jsp
为了执行ant脚本,你需要1.7.0或更高版本的apacheant:
/i2.3.
快速上手这个是最简单的方式开始使用jBPM。这一章介绍了完成范例安装的
步骤。
如果你之前下载过jboss-5.0.0.GA.zip,你可以把它放到${jbpm.home}/install/downloads目录下。否则脚本会为你下载它,但是它会
消耗一些时间(与你的网络情况有关)。eclipse-jee-galileo-win32.zip也一样
(或者eclipse-jee-galileo-linux-gtk(-x86_64).在linux平台下和eclipse-jee-
在MacOSX平台下)。
打开命令控制台,进入目录${jbpm.home}/install。然后运行antdemo.setup.jboss
或者
at
这将?把
JBoss安装到${jbpm.home}/jboss-5.0.0.GA目录?把jBPM安装到JBoss中。?安装hsqldb,并在后台启动。?创建数据库结构?在后台启动JBoss?根据示例创建一个examples.bar业务归档,把它发布到jBPM数据库中?从${jbpm.home}/install/src/demo/example.identities.sql,读取用
户和组。?安装
eclipse到${jbpm.home}/eclipse
?启动
eclipse?安装jBPMweb控制台?安装Signavioweb建模器
当这些都完成后,JBoss(或Tomcat,根据demo.setup脚本中的选择)会在后
台启动。一旦eclipse完成启动,你可以继续执行下面的教程第3章流程设计
器(GPD)来开始编码你的
jBPM业务流程。
或者你可以启动建模流程,通过Signavioweb设计器。
或者使用jBPM控制台。你可以使用下面用户之一进行登陆:
2.1.
alexpassword
mikepassword
peterpassword
marypassword
:现在,对于一些比较慢的机器,在初始化报表时,控制台的
失效时间太短了,所以当你第一次请求报表时,会出现超时,控制台会崩溃。
注销,然后再次登录,就可以避过这个问题。这个问题已经提
交到JIRA中了
JBPM-25082.4.安装脚本jBPM下载包中包含了一个install目录,目录中有一个ant的l文
件,你可以使用它来把jBPM安装到你的应用环境中。
最好严格按照这些安装脚本,进行安装和发布jBPM配置文件。我们可以自定
义jBPM配置文件,但这是不被支持的。
要想调用安装脚本,打开命令行,进入${jbpm.home}/install目录。使用ant
-
p你可以看到这里可以使用的所有脚本。脚本的参数都设置了默认值,可以
快速执行,下面列表给出了可用脚本的概况:?
demo.setup.jboss:安装jboss,把jbpm安装到jboss中,启动jboss,
创建jbpm数据库表结构,部署实例,加载实例身份认证信息,安装并启动
eclipse?
at:安装tomcat,把jboss安装到tomcat中,启动
tomcat,创建jbpm数据库表结构,部署实例,加载实例身份认证信息,安装并
启动eclipse?
clean.cfg.dir:删除${jbpm.home}/install/generated/cfg文件夹。?create.cfg:创建一个配置在${jbpm.home}/install/generated/cfg下,基于当前的参数。?create.jbpm.schema:在数据库中创建jbpm表?create.user.webapp创建一个基本的webapp在${jbpm.home}/install/generated/user-webapp中?delete.jboss:删除安装的at:删除安装的ardown.jboss:删除jbpm
数据库的表并停止at:停止tomcat和hsqldb服务器(如果需要)?drop.jbpm.schema:从数据库中删除jbpm的表?lipse:下载eclipse如果它不存在?get.jboss:下载一个JBossAS,已经测试过当前的jBPM版本,如果它
不存在?
不存在?
hsqldb.databasemanager:启动hsqldb数据库管理器?lipse:解压eclipse,下载eclipse如果它不存在?install.jboss:下载JBoss如果它不存在,并解压?install.jbpm.into.jboss:把jBPM安装到JBoss中?at:把tomcat下载到${tomcat.distro.dir}如果tomcat不存
在,并解压tomcat?
install.at:把jBPM安装到tomcat中?at:部署所有的实例流程?install.signavio.into.jboss:把signavio安装到jboss中?install.at把signavio安装到tomcat中?ample.identities:读取实例用户和用户组数据到数据库?reinstall.jboss:删除之前的jboss安装,并重新安装jboss?reinstall.jboss.and.jbpm:删除之前的jboss安装,并重新安装jboss
并把jbpm安装到它里面?
tomcat并把jbpm安装到它里面?
行?
后台运
行?
stop.jboss:通知jboss停止,但是不等到它完成?at通知Tomcat停止,但是不等到它完成?upgrade.jbpm.schema:更新数据库中的jBPM表到当前版本
要想指定你的配置文件,使用上面的脚本(比如DB表结构生成),最简单的
方法是修改对应的配置文件,在目录${jbpm.home}/install/jdbc。对应的配
置文件会被脚本加载,根据对应的DB。
下面的参数也可以自定义。?
database:默认值是hsqldb。可选值为mysql,oracle和postgresql
?jboss.version:
默认值是5.0.0.GA。可选值是5.1.0.GA如果想要自定义这些值,只需要像这样使用-Dant-Ddatabase=postgresqldemo.setup.jboss
作为可选方案,你可以在${user.home}/.jbpm4/build.properties中设置自定
义的参数值2.5.
依赖库和配置文件我们提供了自动安装jBPM的ant脚本。这些脚本会将正确的依赖库和正确的
配置文件为你安装到正确的位置。如果你想在你的应用中创建自己的jBPM,
可以参考开发指南获得更多信息。2.6.JBossinstall.jbpm.into.jboss任务会把
jBPM安装到你的JBoss5中。进入安装目
录下,执行ant-p可以获得更多信息。这个安装脚本会把
jBPM安装为一个
JBoss的服务,因此所有应用都可以使用同一个jBPM的流程引擎。可以指定-Djboss.home=PathToYourJBossInstallation来修改你的JBoss的安
装路径。
在JBoss中,ProcessEngine可以通过
JNDI获得,new
InitialContext().lookup("java:/ProcessEngine"),相同的流程引擎可以通
过ProcessEngine()获得。2.7.Tomcatinstall.at任务会把
jBPM安装到你的Tomcat中。2.8.Signavio基于web的流程编辑器使用install.signavio.into.jboss和install.at任务可
以将Signavio基于web的流程编辑器安装到JBoss或Tomcat中。2.9.
用户web应用如果你希望把jBPM部署为你的web应用的一部分,可以使用create.user.webapp这个安装任务。这会创建一个包含jBPM的web应用,在${jbpm.home}/install/generated/user-webapp目录下。
如果你在JBoss上或其他包含jta.jar的应用服务器上部署了你的应用,你需要
把${jbpm.home}/install/generated/user-webapp/WEB-INF/lib/jta.jar删
除。2.10.
数据库安装脚本也包含了执行数据库的操作比如创建表,如果你是第一次安装
jBPM,或者更新数据库使用之前版本的表结构。删除表也是可选的。
使用任何数据库操作的前提条件是在${jbpm.home}/install/jdbc中指定你的
连接参数。2.10.1.要想创建表结构,执行create.jbpm.schema任务在${jbpm.home}/install目
录下。作为创建表、约束的一部分,涉及的任务会初始化JBPM4_PROPERTY表,使用当前的引擎版本(
keydb.version)和ID生成器版本(keynext.dbid)。
要想删除表结构,只要执行drop.jbpm.schema任务。注意这个操作会删除
jBPM
表中的所有数据。2.10.2.要想更新,执行upgrade.jbpm.schema任务在${jbpm.home}/install目录下。
更新是一个两步操作。前一步是添加额外的表,列或者约束这些是在新版本中
的。下一步,插入种子数据。
从4.0到4.1,表JBPM4_VARIABLE添加了一个新列CLASSNAME_用来支持设置流
程变量的值的自定义类型,hibernate的类型映射。这个列是可为null的,因为
这个功能在4.0中没有支持,所以没有初始值。
从4.1到4.2,更新过程更有趣一些。?一个新表JBPM4_PROPERTY被用来保存引擎范围的数据。?jBPM
版本保存在JBPM4_PROPERTY表中使用keydb.version用来在未来
发布中精确指定标示符。?ID
生成策略是完全跨数据库的。下一个有效的ID是通过搜索所有包含
主键列的表计算出的,保存在keynext.dbid中在JBPM4_PROPERTY表中。?流程语言设置为jpdl-4.0用于所有已经存在的流程定义,对应
keylangid在表JBPM4_DEPLOYPROP中。jPDL解析器对应langid属性来读取流程
文档以此支持向后的兼容。2.11.
流程设计器(GPD)图形化流程设计器(GPD)使用Eclipse作为其平台,这一节的内容将介绍如
何获得和安装Eclipse,并把GPD插件安装到eclipse上。2.11.1.
eclipse安装教程tomcat
eclipse你需要Eclipse3.5.0
使用实例安装或手工下载eclipse:EclipseIDEforJavaEEDevelopers(163MB)
eclipse的传统版本无法满足要求,因为它没有XML编辑器。Eclipse的Java开
发者版也可以工作。2.11.2.
eclipseGPD使用Eclipse软件升级(SoftwareUpdate)机制安装设计器是非常简单的。在
gpd目录下有一个install/src/gpd/jbpm-gpd-site.zip文件,这就是更新站点
(archivedupdatesite)的压缩包。
在Eclipse里添加更新站点的方法:?
帮助-->安装新软件...?点击添加...
?在添加站点对话框中,单击压缩包
...
?到install/src/gpd/jbpm-gpd-site.zip并点击
'打开'?点击确定在添加站点对话框中,会返回到'安装'对话框?选择出现的jPDL4GPD更新站点
?点击下一步
..然后点击完成
?
接受协议?当它询问的时候重启
eclipse
2.1.2.11.3.
jBPM?点击Window-->Preferences
?选择JBossjBPM-->jBPM4-->RuntimeLocations
?点击
?在AddLocation对话框中,输入一个名字,比如jbpm-4.0然后点击
?在BrowseForFolder对话框中,选择你的
jbpm根目录,然后点击OK
?点击OK在AddLocation对话框中2.2.jBPM2.11.4.jBPM这一节演示如何在你的工作空间定义一个用户库,用来放置jBPM的库文件。
如果你创建一个新工程,只需要将用户库全部添加到buildpath下?点击窗口
-->属性(Windows-->Preferences)?选择Java-->创建路径-->用户类库(Java-->BuildPath-->User
Libraries)?点击新建(
New)?类型名字jBPMLibraries?点击添加JARs()?到jBPM安装程序下的lib目录?选择lib下的所有

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。