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

流程设计器打开后的效果
1 创建一个新流程
在 Eclipse 中,使用 Ctrl+N 打开新建向导(也可以通过 File -> New -> Other 打开),选择 jBPM 4 Process Definition -> Next。

新建向导

创建流程定义文件
选择流程定义文件的目录,然后给文件取一个名字,最后点击 Finish,这样就创建好了一个流程定义初始文件咯O(∩_∩)O哈哈~
2 编辑流程定义文件的源代码(XML 格式)
之前说过,因为 GPD 只能完成有限的可视化流程定义设计工作,一些高级特性还是需要通过编辑流程定义文件的源代码来实现。
打开流程定义文件时,左下角有一个 'Source' 标签,点击后即可打开到流程定义文件源代码的编辑器。

编辑视图
再次点击 'Diagram' 标签,即可返回原来的图形化设计界面,是不是很方便呀O(∩_∩)O哈哈~
3 图形化设计器组件说明

图形化设计器组件列表
选择器
- 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 设计一个稍微复杂些的业务流程
我们使用图形化设计器来设计一个业务流程。这不仅是流程开发者需要掌握的技能,也是业务流程分析者需要掌握的。
假设有这样的一个 “订单-生产” 流程:
- 输入订单。
- 审核订单。
- 如果订单审核不通过,则流程结束。
- 如果订单审核通过,则开始进入 "生产-交付" 阶段。
- 产品的装运、交付过程与财务结算过程同步进行。
- 当产品交付和财务结算都完成后,则流程结束。
流程定义如下:

订单-生产流程
作为开发者,需要在流程图的基础上,填入相应的属性值和并根据需求编写与用户交互的代码,甚至,有时候需要手工修改流程图的 jpdl 源文件来完善流程定义。
4.1 定义活动属性
选中某个活动,就可以修改它的属性,比如可以这样修改活动名称:点击某个活动 -》点击 Properties -》在 Name 输入框中定义活动名称。

修改活动名称的步骤
4.2 定义事件监听器

定义事件监听器的步骤
这里先做初步介绍,以后会详细说明,敬请期待哦O(∩_∩)O哈哈~