软件工程

本类阅读TOP10

·PHP4 + MYSQL + APACHE 在 WIN 系统下的安装、配置
·Linux 入门常用命令(1)
·Linux 入门常用命令(2)
·使用 DCPROMO/FORCEREMOVAL 命令强制将 Active Directory 域控制器降级
·DirectShow学习(八): CBaseRender类及相应Pin类的源代码分析
·基于ICE方式SIP信令穿透Symmetric NAT技术研究
·Windows 2003网络负载均衡的实现
·一网打尽Win十四种系统故障解决方法
·数百种 Windows 软件的免费替代品列表
·收藏---行百里半九十

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
jbpm的任务管理实现

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

一个流程定义有一个TaskMgmtDefinition;一个TaskMgmtDefinition对应多个Actor,同时对应多个Task;
一个Actor有多个Task,可以从TaskMgmtDefinition中通过task的名称直接获取相应的task;

一个流程实例有一个TaskMgmtInstance;一个TaskMgmtInstance对应多个actorInstance,同时对应多个taskInstance;
一个actorInstance有多个taskInstance,可以从TaskMgmtInstance中直接获取相应的taskInstance;

一个TaskNode对例应多个Task
对于这样的流程定义:
 <task-node name='a'>
      <task name='laundry' />
      <task name='dishes' />
      <task name='change nappy' />
      <transition to='b' />
 </task-node>
 只有当节点中的三个任务都完成后,流程才进入后面的节点
 
  对于这样的流程定义:
 <task-node name='a' signal='first'>>
      <task name='laundry' />
      <task name='dishes' />
      <task name='change nappy' />
      <transition to='b' />
 </task-node>
 当第一个任务完成后,token就指向后面的节点
 
 对于这样的流程定义:
 <task-node name='a' signal='never'>>
      <task name='laundry' />
      <task name='dishes' />
      <task name='change nappy' />
      <transition to='b' />
 </task-node>
三个任务都完成后,token仍然不会指向后面的节点;需要自己手动调用processInstance.signal()
才会驱动流程到下面的节点

对于这样的流程定义:
 <task-node name='a' signal='unsynchronized'>>
      <task name='laundry' />
      <task name='dishes' />
      <task name='change nappy' />
      <transition to='b' />
 </task-node>
token不会在本节点停留,而是直接到后面的节点

jbpm用join/fork/merge/decision也可以实现同样的功能,不过它们的实现办法不同,一个是通过
NODE来实现,一个是通过TASK来实现




相关文章

相关软件