`
qiqi1982mm
  • 浏览: 33988 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
社区版块
存档分类
最新评论

jbpm4里面的泳道复用问题

    博客分类:
  • JBPM
阅读更多
   其实这个问题在3.2.3里面也存在,4里面好像也没有很好的解决
   问题描述:开发人员在流程A中定义了泳道A,并为泳道A分配了用户a,b,c
   如果现在流程B也需要用到泳道A,那么必须在流程B中也定义一个泳道A,并再为其分配用户a,b,c
   这样其实是做了重复的操作,jbpm没有提供泳道定义一次,供多个流程定义调用的功能
    但是我们项目有需要泳道复用的功能,于是我们自定义了一套泳道增,删,改查的service,但做起来比较繁琐
    不知jbpm何时能解决这个问题

   今天对这个问题在4.1中做了一个测试
   1.泳道流程定义如下:
<?xml version="1.0" encoding="UTF-8"?>

<process name="swimlane" xmlns="http://jbpm.org/4.0/jpdl">

  <swimlane name="sales representative"
            candidate-groups="sales-dept" />

  <start g="20,20,48,48">
    <transition to="enter order data" />
  </start>
  
  <task name="enter order data"
        swimlane="sales representative" 
        g="96,16,127,52">

    <transition to="calculate quote"/>
  </task>

  <task 
      name="calculate quote" 
      swimlane="sales representative"
      g="255,16,111,52">
  </task>

</process>


 
分享到:
评论
3 楼 xyz20003 2010-05-11  
看来只是泳道定义的复用,没有涉及到跨流程实例之间泳道实例的复用。应该好实现。
2 楼 qiqi1982mm 2010-05-11  
xyz20003 写道
对这个场景没有了解很明白,请问这里说的泳道复用,是指定义一个swimlane,然后可以在多个流程定义里调用。每个swimlane的实例是否保持隔离,是否需要在多个流程定义之间传递这个swimlane?

如果只想要一个泳道定义,多个流程定义引用,每个流程实例之间不需要传递这个swimlane就简单,只要在组织机构定义一个用户组,包含泳道中需要的用户,然后在swimlane中引用就可以了。

如果希望实现的是跨流程的swimlane,那就比较麻烦了。能否详细将跨流程swimlane的场景再详细描述一下?



=============================华丽的分界线=============================
你好,需要实现的就是跨流程的swimlane,我们公司做的是产品,没有具体的场景
但经理认为,每次都定义泳道很麻烦,还不如定义好了几个常用的泳道,然后在流程中复用
比如泳道1:表示系统所有用户
    泳道2:表示所有项目经理
    泳道3:表示女员工,等等
另外:我们系统中工作流只是其中一个模块,有专门的用户模块,所以没有用到jbpm自带的用户,组管理机制
    经理属于一言堂,虽然他的一些意见增加了开发难度,但也不得不执行,很郁闷

    另外,我们自己用flex做了个流程定义器,在上个版本中我是这样实现的:
    1.用户可自定义泳道,包括增,删,改,并选择我们系统中定义的用户,组
    2.在流程定义界面,如果要用到泳道,则弹出已定义好的泳道列表,让用户选择
 
1 楼 xyz20003 2010-05-11  
对这个场景没有了解很明白,请问这里说的泳道复用,是指定义一个swimlane,然后可以在多个流程定义里调用。每个swimlane的实例是否保持隔离,是否需要在多个流程定义之间传递这个swimlane?

如果只想要一个泳道定义,多个流程定义引用,每个流程实例之间不需要传递这个swimlane就简单,只要在组织机构定义一个用户组,包含泳道中需要的用户,然后在swimlane中引用就可以了。

如果希望实现的是跨流程的swimlane,那就比较麻烦了。能否详细将跨流程swimlane的场景再详细描述一下?

相关推荐

    jBPM4学习总结

    【jBPM4学习总结】 jBPM,全称为Java Business Process Management,是一个开源的、灵活且可扩展的业务流程管理框架,涵盖了业务流程管理、工作流和服务协作等多个领域。自2004年10月加入JBoss组织后,jBPM逐渐成为...

    JBPM数据库表说明.doc

    JBPM,全称Java Business Process Management,是一种开源的工作流管理系统,用于实现业务流程自动化。它提供了丰富的API和工具,使得开发者能够设计、部署和管理复杂的业务流程。在JBPM系统中,数据库扮演着至关...

    JBPM5中文文档

    ### JBPM5中文文档知识点详解 #### 一、JBPM5简介 - **定义**: JBPM(JBoss Business Process Management)是一种轻量级、开源的业务流程管理组件,使用Java编写,专注于提供一种灵活的方式来管理和执行业务流程。...

    Jbpm 工作流开发

    4. **持久化配置**: 配置JBPM的数据存储,通常使用Spring的JPA或Hibernate支持。 **JBPM用户指南** 《JBPM用户指南》文档应该是详细阐述如何使用JBPM进行工作流开发的教程,包括安装、配置、建模、部署和运行流程的...

    JBPM5流程图设计规则

    - **泳道**:使用泳道来区分不同角色或部门的职责,使流程图更具结构性。 - **事件**:正确使用开始事件和结束事件,以及中间事件,如信号事件、定时事件等,以处理流程中的异常或特定情况。 - **连接线**:连接...

    jbpm开发指南-笔记

    泳道是jBPM中用于组织任务的一种方式,它可以帮助清晰地划分流程中不同参与者的责任范围。泳道的概念类似于游泳池中的泳道,每个泳道代表一个或一组参与者,这些参与者负责执行该泳道中的所有任务。 **特点:** - *...

    JBPM工作流开发指南

    《JBPM工作流开发指南》深入解析 一、概述 JBPM,全称为JBoss流程管理,是一款基于Java的企业级工作流管理系统,以其强大的可扩展性和完全由Java编写的特性而著称。JBPM的核心持久层采用了Hibernate技术,这意味着...

    jBPM-jPDL学习笔记.zip

    4. **泳道(Lanes)**: 泳道用于组织流程中的活动,通常对应于不同的部门或职责。每个泳道内的节点表示该部门或角色的职责。 5. **流程实例(Process Instance)**: 当流程定义被激活时,就会创建一个流程实例。...

    JBPM开发指南WORD文档

    ### JBPM开发指南知识点 #### 一、JBPM概述与工作流系统介绍 JBPM是一个高度可扩展的工作流管理系统,完全基于Java语言开发,利用Hibernate作为其持久化层,因此,理论上讲,JBPM能够支持所有被Hibernate所支持的...

    jBPM jPDL 用户开发手册 - 第8章

    **jbPM jPDL 用户开发手册 - 第8章** jbPM(Java Business Process Management)是一个开源的工作流管理系统,用于在Java环境中实现业务流程自动化。它提供了丰富的API、工作流建模语言(jPDL)以及可视化工具,...

    JPDL3.1规范手册.rar

    2. **池(Pool)与泳道(Lane)**:池代表实体,比如部门或角色,而泳道则是在池内划分的工作流程区域,表示不同实体的责任范围。 3. **活动(Activity)**:活动是流程中的可执行单元,如任务、事件或子流程。每个...

Global site tag (gtag.js) - Google Analytics