`
letitbe
  • 浏览: 231825 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jbpm零碎笔记

阅读更多
1,JBPM的版本机制允许在数据库中多个同名流程定义共存,流程实例以当时的最新版本来启动,并且在它的整个生命周期中将保持以相同的流程定义执行。当一个新的版本被部署,新的流程实例以新版本启动,而老的流程实例则以老的流程定义继续执行。

2,swimlane(泳道)
实际应用中,一个人是一个流程中多个Task的参与者(actor)的情况是很常见的。在jbpm中通过创建一个swimlane并且把swimlane赋给一个task的方式来设置当前task的参与者(actor)。一个业务流程中的swimlane可以被看做为一个参与者的参与者对象的名称,当然它不一定是固定的某个人,它可以是一个用户组,一个特定用户的角色等。首次执行到达一个Task,赋给该Task的一个swimlane就会算出参与者(actor)。
自己的理解:swimlane是一个描述任务接收者的特殊的对象,可以是一个用户,也可以是一个角色,可以是任何东西,只要能根据这个swimlane算出有哪些actor

3,JBPM中任务的分配方式有两种:一种是为task指定一个assignment-handler,既一个实现了AssignmentHandler接口的类;另外一种是为task指定一个swimlane(泳道),swimlane可以在流程中定义好,一个流程中可以定义若干个swimlane,在定义一个swimlane时同样也是指定了个实现了AssignmentHandler接口的类,当我们的task指定了一个swimlane后,其效果同我们指定一个assignment-handler效果是一样的,只不过可以简化我们任务的分配工作.
自己的理解:这两种方式实际上是同一种,可以把swimlane理解为assignment-handler的命名,或者快捷方式,方便重用(assignment-handler是一次性的)。看来swimlane这个名字是个噱头啊。

4,以图形化的方式显示JBPM当前流程的方法及原理分析

http://blog.csdn.net/tuwen/archive/2007/09/12/1782623.aspx
分享到:
评论
1 楼 taga 2009-04-12  
楼主关于swimlane的说法好像有问题,和第四个里面的说法冲突,个人认为第四个链接中的解释比较合理。

  Swimlane 是tasks的role,而一个actor可以被指派给多个swimlane。
  一个task可以指派给某个swimlane,此时该swimlane中的actors都能分配到该task。

    所以,称swimlane为task的role更确切点。

相关推荐

Global site tag (gtag.js) - Google Analytics