教你使用 jBPM 的图形化设计器来定义流程

在安装好流程设计器(GPD)后, 所有的 jPDL 流程文件都有一个对应的特殊图标, 双击该文件,就会在流程设计器中打开一个 jPDL 流程定义文件。

教你使用 jBPM 的图形化设计器来定义流程

1 创建一个新流程

在 Eclipse 中,使用 Ctrl+N 打开新建向导(也可以通过 File -> New -> Other 打开),选择 jBPM 4 Process Definition -> Next。
教你使用 jBPM 的图形化设计器来定义流程

教你使用 jBPM 的图形化设计器来定义流程

选择流程定义文件的目录,然后给文件取一个名字,最后点击 Finish,这样就创建好了一个流程定义初始文件咯O(∩_∩)O哈哈~

2 编辑流程定义文件的源代码(XML 格式)

之前说过,因为 GPD 只能完成有限的可视化流程定义设计工作,一些高级特性还是需要通过编辑流程定义文件的源代码来实现。

打开流程定义文件时,左下角有一个 ‘Source’ 标签,点击后即可打开到流程定义文件源代码的编辑器。

教你使用 jBPM 的图形化设计器来定义流程

再次点击 ‘Diagram’ 标签,即可返回原来的图形化设计界面,是不是很方便呀O(∩_∩)O哈哈~

3 图形化设计器组件说明

教你使用 jBPM 的图形化设计器来定义流程

选择器
* Select:单个元素选择。
* Marquee:区域选择,一般用于一次性选中多个元素。

组件

组件名称 说明
transition 输出路径
start 起始点
end 终止点(正常情况)
end-cancel 终止点(被取消)
end-error 终止点(出现错误)
state 状态活动
hql 支持 hql 的活动
sql 支持 sql 的活动
jms 支持 jms 的活动
custom 自定义活动
java 支持 java 的活动
script 支持 script 的活动
rule 支持 rule 的活动
task 支持人机交互的活动,也叫任务
sub-process 子流程
decision 决策分支(只能选择某一条路径)
rule 支持 rule 的决策分支
fork 多分支(出现多条路径同时进行)
foreach ???
join 多分支聚合

注意:fork 与 join 组件的图标是一样的,所以在定义时一定要注意区分,切记哦O(∩_∩)O哈哈~

4 设计一个稍微复杂些的业务流程

我们使用图形化设计器来设计一个业务流程。这不仅是流程开发者需要掌握的技能,也是业务流程分析者需要掌握的。

假设有这样的一个 “订单-生产” 流程:
1. 输入订单。
2. 审核订单。
3. 如果订单审核不通过,则流程结束。
4. 如果订单审核通过,则开始进入 “生产-交付” 阶段。
5. 产品的装运、交付过程与财务结算过程同步进行。
6. 当产品交付和财务结算都完成后,则流程结束。

流程定义如下:

教你使用 jBPM 的图形化设计器来定义流程

作为开发者,需要在流程图的基础上,填入相应的属性值和并根据需求编写与用户交互的代码,甚至,有时候需要手工修改流程图的 jpdl 源文件来完善流程定义。

4.1 定义活动属性

选中某个活动,就可以修改它的属性,比如可以这样修改活动名称:点击某个活动 -》点击 Properties -》在 Name 输入框中定义活动名称。

教你使用 jBPM 的图形化设计器来定义流程

4.2 定义事件监听器

教你使用 jBPM 的图形化设计器来定义流程

这里先做初步介绍,以后会详细说明,敬请期待哦O(∩_∩)O哈哈~