在jbpm中,task可以指派给一个actor,这个actor是一个string,所以扩展性比较好。它的意义可以根据具体的逻辑来制定,如user,role,group等等都是可以的。
另外,还可以指定task的pooledActors,这个是task的备用actor。使用思路是,如果actor为null的话,则该pooledActors中的actor可以接管该task(必须首先设置为该task的actor才能处理该task)。
Personal task list指所有的actor为该person的task list。
Pooled task list指所有的无actor,且person在pooledActors中的task list。
swimlane也是一个很好的概念,可以理解为对一个actor和pooledActor设置的复用。举个例子,一个流程如果所有的task必须由接手该process的第一个task的人处理的话,则swimlane很有用,以后的task assignment直接引用swimlane就好了。
另外jbpm还可以使用identity model结合assignment expression对配置task的actor。
identity model比较简单,关键的类为User,Group,Membership,值得注意的是Group可以加上group type,来对group进行区分,并且可以进行group嵌套。Membership定义了user和group的对应关系,并且里面有个role可以说明user在该group中的角色。
总体看jbpm的task assignment和identity model比较简洁容易上手,有些地方也是值得借鉴的。
但是关于task assignment和identity model也有一些值得商榷的地方。
如task的处理应该由该task的actor完成,但是jbpm并没有强制这一点。另外,设置task的actor也没有保护。
identity model比较简单,和复杂的用户权限管理不好集成。
当然,jbpm的核心是工作流,重心未必在这方面。但是问题是感觉一个工作流和identity model的关系还是很紧密的,如此一来,工作流和identity model的集成工作又是程序员的事情了。关于workflow和identity model的集成又是另一个话题了。
分享到:
相关推荐
jbpm-identity.jar jbpm-identity.jar
org.jbpm.api.model common process execution model interfaces used in services and delegation interfaces like ActivityBehaviour and EventListener. org.jbpm.api.task interfaces related to the ...
JBPM_TASK JBPM_TASK FK_TASK_PROCDEF PROCESSDEFINITION_ 一个流程可能有多个task JBPM_MODULEDEFINITION JBPM_MODULEDEFINITION FK_MODDEF_PROCDEF PROCESSDEFINITION_ 一个流程可能处在很多的模块(模块概念不...
jbpm相关jPDL的流程定义元素 第一层级:GraphElement第二层级:node;processDefinition;Transition;Task 它们都inherited from GraphElement,反正不要积分下下来看看吧
BPM4中ProcessDefinition、ProcessInstance、Execution、Task关系和区别
jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍jbpm介绍
5.17 表JBPM4_TASK 16 5.18 表JBPM4_VARIABLE 17 6、操作: 19 6.1 发布一个流程DEPLOY: 19 6.2 上传一个ZIP包:(包含PNG和JPDL.XML)后 19 6.3 开始一个流程STARTPROCESSINSTANCEBYKEY后 19 6.4 填写申请信息 19 ...
jbpm jbpm4.3.jar DDDDDDDD
\jbpm简介\jbpm简介\jbpm简介\jbpm简介\jbpm简介
jbpm所南的新sql脚本mysql.identity.script.jbpm321
jbpm3,jbpm4用户文档,开发指南,jbpm4解读,jbpm学习笔记,jbpm最佳实践全套套
jbpm 数据库jbpm 数据库jbpm 数据库jbpm 数据库jbpm 数据库
ssh 框架整合jbpm3.2的时候 会遇到一个错误 :大概是 string field什么的,意思是 调用hibernate里面过期作废的方法字段了,就会报错,解决方法需要反编译然后修改 再打成jar 很麻烦,这里我提供一个已经修改好了的
jbpm应用开发指面(胡奇) jbpm4.3表结构和表字段说明 [jBPM开发指南].高杰.文字版 jBPM5_用户手册-中文版
1.7 JBPM_TASK:流程任务表 6 1.8 JBPM_TASKCONTROLLER:流程任务控制器 7 1.9 JBPM_VARIABLEACCESS:流程变量表 7 1.10 JBPM_MODULEDEFINITION:流程模块定义表 8 1.11JBPM_EXCEPTIONHANDLER:流程异常处理器表 8 ...
jbpm与spring整合需要的jar 。 bsh.jar,jcr-1.0.jar,jbpm-identity.jar,jbpm-jpdl.jar
jbpm4.1和5开发手册 pdf 高清版
jbpm使用案例,非常不错,大家都来看看吧。
2. <assignment class='org.jbpm.tutorial.taskmgmt.NappyAssignmentHandler' /> 3. task> NappyAssignmentHandler类: java 代码 1. public void assign(Assignable assignable, ExecutionContext execution...
通过查看JBPM的表,我们知道要实现流程监控功能就是把JBPM当中的JBPM_PROCESSDEFINITION(已发布的流程表),JBPM_PROCESSINSTANCE(流程实例表),JBPM_TASKINSTANCE(流程产生的任务实例表)这三张表串联起来就可以...