jBPM 用户指南(1)

 

作者:jBPM组

版本:5.0.0

原文版权归作者所有,该翻译稿仅供学习交流使用,引用或转载请保证该部分的完整

 

 

 

目录

 

1概述

1.1模式

1.1.1创建BPMN2流程的Drools流(Drools Flow)Eclipse插件

1.1.2创建BPMN2流程的jBPM5 Eclipse插件

1.1.3使用Oryx设计器的基于Web的流程模式

1.2部署

1.3调度

1.3.1流程引擎

1.3.2人工任务(Human task)服务

1.4监控

1.4.1基于Web方式的管理控制台

2安装

2.1先决条件

2.2下载安装程序

2.3示例安装

2.4Eclipse工具

2.5使用Web管理控制台

2.6Guvnor库

2.7技术支持

2.8FAQ

3流程

3.1创建流程

3.1.1BPMN2可视编辑器

3.1.2使用XML定义流程

3.1.3使用(Process)API定义流程

3.2在应用程序中使用流程

3.3节点类型

3.4数据(Data)

3.5约束(Constraints)

3.6方法(Actions)

3.7事件(Events)

3.8计时器(Timers)

3.9更新流程

3.9.1流程实例迁移

4BPMN2.0

4.1业务处理模式与注释(BPMN)2.0规范

4.2示例

4.3支持的元素(elements)与属性(attributes)

5API

5.1jBPM API

5.1.1Knowledge Base

5.1.2会话(Session)

5.1.3事件(Events)

5.2Knowledge-based API

6人工任务(Human Tasks)

6.1流程中的人工任务

6.1.1泳道

6.2人工任务的管理组件

6.2.1任务生存期

6.2.2任务组件链接到jBPM引擎

6.2.3启动任务管理组件

6.2.4与任务管理组件的交互

6.3人工任务管理接口

6.3.1整合Eclipse

6.3.2Web方式的任务视图

7领域(Domain-specific)流程

7.1介绍

7.2示例:通知

7.2.1创建工作事项定义

7.2.2注册工作事项定义

7.2.3在流程中使用新的工作事项

7.2.4调用服务节点

8持续性

8.1运行时(Runtime)状态

8.1.1二进制持续性

8.1.2安全点(Safe Points)

8.1.3配置

8.1.4事务

8.2流程定义

8.3历史日志

8.3.1数据库方式存储流程事件

9控制台

9.1安装

9.2运行

9.2.1管理流程实例

9.2.2人工任务列表

9.2.3报表

9.3添加新的流程/任务表单

9.4REST接口

10业务活动监控

10.1报表

10.2直接访问

索引

 

 

 


 

 

 

章节1概述

1.1模式

1.1.1创建BPMN2流程的Drools流(Drools Flow)Eclipse插件

1.1.2创建BPMN2流程的jBPM5 Eclipse插件

1.1.3使用Oryx设计器的基于Web的流程模式

1.2部署

1.3调度

1.3.1流程引擎

1.3.2人工任务(Human task)服务

1.4监控

1.4.1基于Web方式的管理控制台

 

 

概述jBPM项目中包含的多个组件,惯穿业务过程的各个阶段,包括模型,部署,调度与监控。

 

1.1模式

当前在jBPM中,用户可以使用图形化的流图表创建或者修改业务流程,而jBPM的目标是允许开发人员以及业务人员都可以使用Eclipse编辑器或者Web方式的编辑器来操作。目前有三种方式为BPMN过程建模。

 

1.1.1创建BPMN2流程的Drools流(Drools Flow)Eclipse插件

 该插件可以供开发人员创建,测试以及调试BPMN2流程

图1.1创建BPMN2流程的Drools流(Drools Flow)Eclipse插件

 

1.1.2创建BPMN2流程的jBPM5 Eclipse插件

该插件是为了支持BPMN2规范的全部内容开发的,当前仍处于开发中,仅支持有限数量的构造与属性,但仍然可以创建简单的BPMN2流程。

 

图1.2创建BPMN2流程的jBPM5 Eclipse插件

 

1.1.3使用Oryx设计器的基于Web的流程模式

 

Oryx设计器提供了Web方式的流程编辑。该设计器集成在Guvnor(存放流程的库)中,可以用设计器创建,查看,更新流程。

 

图1.3使用Oryx设计器的基于Web的流程模式

 

1.2部署

 

Guvnor作为一个知识库(knowledge respository)可以存放流程,域模型,业务规则等。它提供了Web方式的控制台可用于查看,修改,测试。Oryx设计器集成在Guvnor中。也支持不同用户之间的协作,情景测试,打包等。

 

1.3调度

 

1.3.1流程引擎

核心引擎是用Java写的一个轻量级的工作流引擎:

  • 本地BPMN2流程调度
  • 可插入的持续性与事务
  • 审核与历史日志
  • 基于一般的流程引擎

我们支持BPMN2.0规范中的全部节点类型与属性,也提供了一个有效的子集,该子集包含了全部常用的节点类型。下面的列表显示了基于BPMN2.0 XML格式的各种元素:

  • 流对象(Flow objects)
    • 事件(Events)
      • 开始事件(Start Events)(空None,条件Conditional,信号Signal,消息Message,计时器Timer)
      • 结束事件(End Events)(空None,终止Terminate,错误Error,升级Escalation,信号Signal,消息Message,补偿Compensation)
      • 中间捕获事件(信号Signal,计时器Timer,条件Conditional,消息Message)
      • 中间抛出事件(空None,信号Signal,升级Escalation,消息Message,补偿Compensation)
      • 不可中断(Non-interrupting)边界事件(Boundary Event)(升级Escalation,计时器Timer)
      • 可中断边界事件(升级Escalation,错误Error,计时器Timer,补偿Compensation)
    • 活动(Activities)
      • 脚本任务(Script Task)(Java或者MVEL表达式语言)
      • 任务(Task)
      • 服务任务(Service Task)
      • 用户任务(User Task)
      • 业务规则任务(Business Rule Task)
      • 手工任务(Manual Task)
      • 发送任务(Send Task)
      • 接受任务(Receive Task)
      • 可复用子流程(Reusable Sub-Process)(调用活动Call-Activity)
      • 嵌入式子流程(Embedded Sub-Process)
      • Ad-Hoc子流程
      • 数据对象(Data-Object)
    • 网关(Gateways)
      • 发散(Diverging)
        • 独占(Exclusive)(Java,MVEL,XPath表达式语言)
        • 包容(Inclusive)(Java,MVEL,XPath表达式语言)
        • 并行(Parallel)
        • 基于事件(Event-Based)
      • 聚合(Converging)
        • 独占(Exclusive)
        • 并行(Parallel)
    • 路线(Lines)
  • 数据(Data)
    • Java类型
    • 流程属性
    • 嵌入式子流程属性
    • 活动属性
  • 连接对象(Connecting objects)
    • 顺序流(Sequence flow)

1.3.2人工任务服务

 

人工任务是BPM解决方案的重要部分。流程中的部分工作可以自动执行,而另外一些必须在与业务人员交互的过程中执行。用户的任务列表,任务的申请与指派等都是该服务的内容。引擎本身没有给出一个规范或者内部实现,只是支持其他实现以插件方式接入。WS-HT服务是jBPM当前的缺省实现。人工任务规范涉及的生存期如下所示。需要注意是的WS-HT也包含组指派,提升,指派规则等特性。

 

 

图1.4WS-HT人工任务生存期

 

用户定义的人工任务表单支持模板化,便于其它方案集成。

 

1.4监控

 

要监控流程,必须要能在运行时知道发生了什么。流程监听器可以在运行时监听发生的各种事件,譬如流程实例启动,节点实例完成等。这些信息可以写到历史日志中,用于报表、统计分析,或者用于动态分析与业务活动监控(Business Acitivty Monitoring BAM)的响应。

 

1.4.1Web方式的管理控制台

 

流程可以通过Web控制台进行管理,包括流程实例的启动,停止,查看等。

 

图1.5管理流程实例

 

查看任务列表,调用执行任务

 

图1.6管理任务

 

生成报表

 

图1.7生成报表

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值