Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3355035
  • 博文数量: 530
  • 博客积分: 13360
  • 博客等级: 上将
  • 技术积分: 5473
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-13 13:32
文章分类

全部博文(530)

文章存档

2017年(1)

2015年(2)

2013年(24)

2012年(20)

2011年(97)

2010年(240)

2009年(117)

2008年(12)

2007年(8)

2006年(9)

分类: Java

2013-05-27 16:02:18

转载:http://blog.chinaunix.net/uid-7374279-id-3486040.html
1.1 流程定义

jbpm5提供了3个图形化设计器,其中两个是基于Eclipse的插件,一个是基于web的。

(1)Drools FlowEclipse插件

这个Eclipse插件允许用户创建、测试、调试BPMN2流程

(2)jBPM5 Eclipse插件

这是一个用来全面支持BPMN2标准的Eclipse插件。现在还在开发中,仅支持有限的流程结构和属性,但是已经可以定义简单的BPMN2流程。

(3)基于webOryx Designer

Oryx Designer实现了基于web进行流程定义。这个设计器已经集成到GuvnorDrools的一个子项目,可以将流程定义存储到其知识库中)。这个设计器可以用于创建、预览、更新BPMN2流程。

1.2部署

Guvnor可以作为一个知识库,用于存储流程、域模型以及业务规则。Guvnor提供了一个基于web的管理控制台,可以用该控制台检查、修改和测试存储于其中的“知识”。Oryx Designer已经集成到Guvnor的控制台中,Guvnor同时也支持用户协作,场景测试,分包管理。

1.3 执行

1.3.1 流程引擎

核心的引擎是一个Java实现的轻量级的工作量引擎:

1)本地BPMN2 流程执行

2可插入式的持久化和事务处理

3审核及历史日志记录

4基于一个通用的流程引擎

该引擎当前还没有实现BPMN 2.0规范中所定义的所有节点类型和属性,但已经支持其中一个非常重要的子集,下表将列出当前已支持的元素:

1)流程对象

1)事件

① 启动事件(无,有条件的,信号,消息,定时器)

② 结束事件(无,终止,错误,升级,信号,消息,补偿)

③ 中间捕捉事件(信号,定时器,条件,消息)

④ 中间抛出事件(无,信号,升级,消息,补偿)

⑤ 非中断边界事件(升级,定时器)

⑥ 中断边界事件(升级,错误,定时器,补偿)

2)活动

① 脚本任务(JavaMVEL表达式语言)

② 任务

③ 服务工作

④ 用户任务

⑤ 业务规则任务

⑥ 手动任务

⑦ 发送任务

⑧ 接收任务

⑨ 可重复使用的子流程(呼叫活动)

⑩ 嵌入式子流程

11 点对点子流程

12 数据对象

3)网关

发散:

① 独占(JavaMVELXPath表达式语言)

② 非独占(JavaMVELXPath表达式语言)

③ 并行

④ 基于事件

会聚:

① 独占

② 并行

4)线路

(2)数据

1Java类型语言

2)流程属性

3)嵌入式子流程属性

4)活动属性

3)连接对象

1)顺序流程

阅读(1442) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~