`
zybing
  • 浏览: 458924 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

jBPM4.4:ProcessFactory和ProcessDefinitionBuilder

阅读更多

在文档中,有例子可以创建自己的流程,用的是ProcessFactory

 

在devguild中的7.4的ExternalActivity中提到第一次

 

实际拿到jBPM4.4中,没有这个ProcessFactory。

 

网上找资料,在论坛上找到了处理方法(http://community.jboss.org/message/529684

现在用 ProcessDefinitionBuilder 代替了 ProceeFactory

 

ProcessDefinitionBuilder 的使用如下:

 

  • 通过startProcess启动一个Process的定义,返回ProcessDefinitionBuilder对象
    • 增加Activity:
      调用ProcessDefinitionBuilder 的 startActivity 方法,增加 Activity 进入 ProcessDefinition;
      Activity设置完成,使用 endActivity 方法告诉 ProcessDefinition,这个Activity定义结束了;
      流程的转向用transition()函数增加;
    • 需要定义一个启动动作:
      需要一个启动元素,在创建流程实例的时候,第一个先到达这个元素;
      这个元素在启动流程(ProcessDefinitionImpl调用startProcessInstance的时候要寻找这个元素的)
      定义的方法是在设置Activity的时候,调用ProcessDefinitionBuilder的initial方法来确定的;
  • 流程定义结束,调用endProcess告诉ProcessDefinitionBuilder,流程定义结束,返回ProcessDefinitionImpl

示例如下:
public static void main(String[] args) throws Throwable {

// 开始一个流程定义
ProcessDefinitionBuilder builder = ProcessDefinitionBuilder.startProcess("Hello World");

// 开始增加Activity:自己定义的Activity要实现ActivityBehaviour接口
// 第一个Activity定义为启动节点,这个由调用initial()来确定的
// Activity定义结束,调用endActivity();  
// 流向由transition来定义:
//          可以transition(String to) 或者 transition(String to, String name) 2种方式
builder.startActivity(new StartActivity())
          .initial()
          .transition("hello display")
          .endActivity();

builder.startActivity("hello display", new Display("Hello"))
           .transition("world display")
           .endActivity();

builder.startActivity("world display", new Display("World")).endActivity();

// 流程定义结束,调用 endProcess确认
ProcessDefinitionImpl processDefinition = builder.endProcess();

// 开始一个流程
ClientProcessInstance clientProcessInstance = processDefinition.startProcessInstance();

...

}
 


 

分享到:
评论

相关推荐

    jBPM4.4.rar_jbpm4.4_jbpm4.4 PDF

    在《jBPM4.4开发指南》中,开发者可以了解到jBPM4.4的核心功能和设计原理。该指南通常涵盖以下几个关键知识点: 1. **系统架构**:jBPM4.4基于Eclipse Persistence API(JPA)和Hibernate ORM,提供了持久化服务,...

    jbpm4.4下载地址

    5. **数据持久化**:jBPM 4.4支持多种数据库,如MySQL、Oracle和PostgreSQL,用于存储流程实例和历史记录,确保了数据的完整性和持久性。 6. **扩展性**:jBPM 4.4具有高度的可扩展性,允许开发者通过插件机制添加...

    jbpm4.4文档+学习资料

    jbpm4.4是JBoss企业级业务流程管理(Business Process Management)平台的一个重要版本,它为开发者提供了全面的工作流和业务流程管理解决方案。本文将深入解析jbpm4.4的相关知识点,帮助那些寻找优质学习资源的朋友...

    jBPM4.4开发实例

    在这个入门开发实例中,我们将探讨如何利用jBPM4.4进行业务流程的建模、部署和执行。 **一、jBPM4.4核心概念** 1. **流程定义(Process Definition)**:使用jBPM的流程定义语言(BPML或BPMN)来描述业务流程。...

    jbpm4.4中文开发指南

    **jbpm4.4中文开发指南**作为官方翻译版,为中文用户提供了详细的学习资料,涵盖了jbpm4.4的所有核心概念和技术,是新手入门和进阶的理想参考。通过阅读《jbpm4.4开发指南.doc》,读者可以系统了解jbpm的工作原理、...

    JBPM4.4资料的其他补充

    JBPM4.4是JBPM的其中一个稳定版本,发布于2009年,它提供了强大的工作流服务,包括流程定义、流程实例管理、任务管理和监控等功能。在JBPM4.4版本中,开发者可以利用其提供的API和工具来设计、部署和执行复杂的业务...

    jBPM4.4开发指南

    ### jBPM4.4开发指南关键知识点解析 #### 一、工作流基础与概念 **1.... 工作流是指业务过程的部分或整体在计算机...这对于初学者来说是非常有用的参考资料,可以帮助他们快速入门并掌握 jBPM4.4 的核心知识和技术要点。

    jBPM 4.4用户手册 中文PDF

    《jBPM 4.4 用户手册》中文版提供了全面的指南,涵盖了从安装、配置、建模、执行到监控的各个环节,是学习和使用jBPM 4.4的重要参考资料。通过阅读这份手册,开发者和业务分析师可以深入了解jBPM的功能和用法,快速...

    jbpm4.4 shh2 项目示例

    jbpm4.4 shh2 项目示例是基于jbpm4.4版本与SSH2(Struts2、Spring和Hibernate)集成的一个实战项目。jbPM(Business Process Management)是一款开源的工作流管理系统,用于实现业务流程自动化。SSH2是Java开发中的...

    jBPM4.4 详解 API 中文

    ### jBPM4.4 API 详解:工作流自动化的核心技术 #### 一、工作流基础知识 工作流,作为业务过程的部分或整体自动化,旨在通过计算机应用环境实现文档、信息或任务在多个参与者间的自动传递,以达到预期的业务目标...

    JBPM4.4视频教程(22集附源码)

    资源名称:JBPM4.4视频教程(22集附源码)资源目录:【】(01)jbpm4.4简介【】(02)JBPM4.4开发环境搭建【】(03)jbpm4.4环境搭建续【】(04)jbpm4.4配置文件和开发前准备【】(05)jbpm4.4部署流程发起流程实例【】(06)...

    JBPM4.4与SSH2之整合(附可运行源码和jar包列表)(my_jbpm4.4_ssh2.rar)

    JBPM4.4与SSH2之整合(附完整源码) 这些天,想着把jbpm4.4与ssh2整合一下,由于之前从来没用过jbpm,也不知道各版本之间会有什么差异(经过网上的收集对比,还真有些差异),整合起来,还真是有些步履艰难。收集了...

    jbpm4.4开发用户指南

    这个压缩包包含了两个关键文档:《jBPM 4.4 开发指南》和《jBPM 4.4 用户指南》,它们将帮助我们深入了解jBPM 4.4的各个方面。 首先,让我们从《jBPM 4.4 开发指南》开始。这份文档主要面向开发者,详细阐述了如何...

    jbpm4.4 流程运转+驳回+分配组任务+ssh2

    jbpm4.4是JBoss Business Process Management Suite的第4.4版本,它是一个开源的工作流和业务流程管理系统,用于构建、部署和管理业务流程。本教程将深入探讨jbpm4.4中的核心功能,包括流程运转、驳回、分配组任务...

    jbpm4.4 schema.xsd

    jbpm4.4 schema.xsd jbpm4.4 schema.xsd jbpm4.4 schema.xsd jbpm4.4 schema.xsd jbpm4.4 schema.xsd

    jbpm4.4表字段说明

    JBPM4.4是JBoss Business Process Management (BPM)平台的一个特定版本,它提供了用于设计、执行和管理业务流程的工具和框架。在JBPM4.4中,数据库是存储流程实例、流程定义以及相关元数据的关键部分。以下是关于...

    jbpm4.4+tomcat6+eclipse jee

    3. **持久化**:jbpm4.4使用JPA(Java Persistence API)来保存流程实例和相关数据到数据库中,确保数据的持久性和可恢复性。 4. **任务服务**:提供了一套API来处理任务的分配、接收、完成和查询,使得业务用户...

    jBPM4.4.rar_jbpm4_jbpm4.4

    "jBPM4.4.docx" 文件可能是关于 jbPM 4.4 示例的详细文档,它可能包含如何安装、配置、创建和运行流程实例的步骤,以及可能遇到的问题和解决办法,对于学习和使用 jbPM 4.4 是非常有价值的参考资料。 总结,jbPM ...

    jbpm4.4spring.rar_jbpm4_jbpm4.4

    【标签】"jbpm4 jbpm4.4" 强调了项目使用的具体版本,这可能对开发者了解项目的兼容性和解决可能遇到的问题有所帮助,因为不同版本的JBPM可能会有不同的特性和API变化。 【压缩包子文件的文件名称列表】: 1. `....

Global site tag (gtag.js) - Google Analytics