流程定义
流程定义,是一个XML文件,JBPM4中常用的流程定义语言是:JPDL(JBPM Process Definition Language)。
我们可以选择新建一个流程定义:
在流程定义设计器上,设计流程:
注意中间要使用Task节点,最终定义好的流程定义文件如下所示:
<?xmlversion="1.0" encoding="UTF-8"?>
<processkey="LEAVE" name="请假单"xmlns="http://jbpm.org/4.4/jpdl">
<startform="baoxiao" g="234,7,48,48" name="start1">
<transitiong="-71,-17" name="提交给张三审批"to="张三审批"/>
</start>
<taskassignee="张三"g="215,113,92,52" name="张三审批">
<transitiong="-71,-17" name="提交给李四审批"to="李四审批"/>
</task>
<taskassignee="李四"g="218,216,92,52" name="李四审批">
<transitiong="-47,-17" name="to end1" to="end1"/>
</task>
<endg="247,326,48,48" name="end1"/>
</process>
|
在完成流程的设计之后,我们可以编写代码,把这个流程定义文件部署到数据库中:
publicclassJbpm_01_DeployProcessDefinition extendsTestCase{
//把流程定义文件的相关信息保存到数据库中!
publicvoidtestDeployProcessDefinition(){
//流程引擎
ProcessEngine engine = newConfiguration()
.setResource("jbpm.cfg.xml").buildProcessEngine();
//从流程引擎中获得跟数据库操作有关的服务
engine.getRepositoryService()
.createDeployment() //现在要部署流程定义
.addResourceFromClasspath("process01.jpdl.xml") //添加流程定义文件
.deploy(); //部署,将流程定义的相关信息插入数据库\
}
}
|
在运行完上述代码之后,我们可以到数据库中查看相关的信息:
上面的数据库表,描述了有关ProcessDefinition对象的信息。ProcessDefinition对象有:name,id,key,version等属性。
Name就是给人类看的名称,比如:“请假单”
Key就是一个键值,比如:LEAVE
Version是版本号,对于相同的流程定义(名称和KEY相同),如果重复部署(比如上述代码多次运行),其version将一直递增。
Id就是KEY和VERSION组合的值。比如:LEAVE-1
上面数据库表中呈现的pdid,pdkey,pdversion和OBJNAME_字段的值,就是这些属性。
分享到:
相关推荐
【jbpm-4.4.zip part03】这个压缩文件是关于jbpm 4.4版本的组成部分,jbpm(Java Business Process Management)是一个开源的工作流管理系统,它提供了业务流程建模、部署、执行和监控的功能。jbpm 4.4是该系统的一...
JBPM4.4是JBoss Business Process Management (BPM)平台的一个版本,它是一个开源的企业级BPM解决方案,用于设计、执行和管理业务流程。在这个完整的审批流程工程中,我们看到它采用Maven进行项目构建和依赖管理,...
【jbpm4.4-请假流程】是一个基于Java开发的流程引擎示例,主要用于演示如何在企业级应用中实现请假流程。jbPM是Java Business Process Management的缩写,它是一个开源的工作流和业务流程管理系统,提供了对BPMN 2.0...
1. **流程定义语言**:jBPM 4.4支持多种流程定义语言,包括BPMN2.0(Business Process Model and Notation),这是一种标准化的图形表示法,用于描述业务流程。此外,它还支持JPDL(jBPM Process Definition ...
**五、jBPM4.4流程执行** 1. **启动流程**:调用jBPM API启动流程实例,传入初始参数。 2. **任务管理**:查询待办任务,完成任务,或者通过API进行任务的分配和操作。 3. **流程监控**:通过日志、报表或监控...
- **流程定义与建模**:jbpm4.4使用BPMN(Business Process Modeling Notation)进行流程建模,这是一种标准化的语言,允许用户以图形化方式设计和理解复杂的业务流程。 - **流程实例**:一旦流程定义完成,可以...
2. **流程引擎**:jbpm的核心是其流程引擎,它负责解析和执行流程定义。在jbpm_4.4中,引擎进行了优化,提高了执行效率和稳定性。 3. **持久化**:jbpm使用Hibernate作为默认的数据持久化框架,确保流程实例和相关...
**jbpm4.4入门编程小例子** ...通过学习这个入门编程小例子,你可以了解如何使用jbpm4.4定义流程、启动流程实例、执行任务以及监控流程状态。这将为你在实际项目中应用工作流管理打下坚实的基础。
【jbpm4.4-demo】是一个基于jbpm4.4版本的完整演示项目,它包含了所有必要的组件和配置,使得用户可以直接下载并运行,体验一个请假流程的示例。jbpm(Java Business Process Management)是一个开源的工作流和业务...
jbpm4.4 shh2 项目示例是基于jbpm4.4版本与SSH2(Struts2、Spring和Hibernate)集成的一个实战项目。jbPM(Business Process Management)是一款开源的工作流管理系统,用于实现业务流程自动化。SSH2是Java开发中的...
Jbpm4.4是一个流程管理系统,它结合了业务流程管理(BPM)和工作流服务,提供了强大的流程定义、执行和监控能力。在这个版本中,Jbpm与Spring框架和Hibernate ORM工具进行了整合,实现了更加灵活和高效的企业级应用...
在JBPM4.4版本中,开发者可以利用其提供的API和工具来设计、部署和执行复杂的业务流程。 首先,让我们深入了解一下JBPM4.4的核心特性: 1. **流程建模**:JBPM4.4支持BPMN(Business Process Modeling Notation)...
JBPM4.4是该系统的一个特定版本,它提供了全面的工作流支持,包括流程设计、执行、监控和优化。本篇文章将详细探讨JBPM4.4的基础知识,以及如何通过jsp和servlet来实现入门级的应用。 **1. 工作流管理系统介绍** ...
jbpm-4.4.zip是一个包含jbpm(Java Business Process Management)4.4版本的压缩文件,这是一款流行的工作流管理系统,专为管理和自动化业务流程而设计。jbpm项目始于2004年,旨在提供一个开源、轻量级、灵活且可...
jbpm4.4是JBoss企业级业务流程管理(Business Process Management)套件的一个版本,它提供了一整套工具和服务,用于设计、部署和执行业务流程。在这个“简单请假流程”中,我们可以深入理解jbpm4.4如何帮助开发者...
4. **部署与执行**:讲解如何将流程部署到jBPM服务器,并启动和监控流程实例。 5. **编程接口**:详细说明如何使用API来控制流程实例的生命周期,如启动、挂起、恢复和终止流程。 6. **任务管理**:涵盖如何处理...
【jbpm4.4+SSH】是一个集成的Java企业级应用框架,主要涉及的是工作流管理系统jbpm4.4与Spring、Struts2(SSH)三大框架的整合。jbpm4是一个开源的工作流程管理系统,它提供了流程定义、执行、监控和优化等一系列...
#### 一、JBPM4.4简介及环境搭建 JBPM(JBoss Business Process Management)是一款开源的工作流引擎,主要用于实现业务流程管理(BPM)。JBPM4.4是该系列的一个稳定版本,本文将详细介绍如何从零开始构建一个JBPM...