原创作者: tomkoo
阅读:7941次
评论:3条
更新时间:2011-05-26
在使用JBPM的时候遇到“会签”的难题,还真是让我这个接触JBPM没有几天的新手犯了愁。于是乎在Google里面狂搜了一把,还是没有什么头绪。抱着试一试的心理到平时都没有都少人说话的一个JBPM的技术讨论QQ群中发了一条消息,没有想到还又了不少的收获。
经过大家的讨论,得出了两种实现“会签”的方法。
1. 把需要进行“会签”的Node的signal-property设置为last-wait,使该节点必须在完成所有Task以后才能进入下一个Node。然后就是给“会签”的人员名单actors中的每一个人创建一个TaskInstance。这样就使得流程只有在actors中的所有人都完成自己的TaskInstance的时候,这个流程才能进入下一个Node,从而实现“会签”。
2. 根据JBPM Wiki上面的一个例子ForEachForkActionHandler 来实现“会签”。主要的理论是在要会签的Node上触发一个Aciton,然后在这个Action中实现Transition的动态创建,有多少人会签就创建多少个Transition,然后这些Transition转到会签处理Node,再到一个Join节点,完成会签。
这两种方法也算是给了实现“会签”提供了思路,不过还没有自己去实现过,哈哈 ,明天再去实现!
附:
ForEachForkActionHandler 例子的URL:http://wiki.jboss.org/wiki/Wiki.jsp?page=ForEachForkActionHandler
相关讨论URL:http://www.jboss.com/index.html?module=bb&op=viewtopic&t=80768&view=previous
经过大家的讨论,得出了两种实现“会签”的方法。
1. 把需要进行“会签”的Node的signal-property设置为last-wait,使该节点必须在完成所有Task以后才能进入下一个Node。然后就是给“会签”的人员名单actors中的每一个人创建一个TaskInstance。这样就使得流程只有在actors中的所有人都完成自己的TaskInstance的时候,这个流程才能进入下一个Node,从而实现“会签”。
2. 根据JBPM Wiki上面的一个例子ForEachForkActionHandler 来实现“会签”。主要的理论是在要会签的Node上触发一个Aciton,然后在这个Action中实现Transition的动态创建,有多少人会签就创建多少个Transition,然后这些Transition转到会签处理Node,再到一个Join节点,完成会签。
这两种方法也算是给了实现“会签”提供了思路,不过还没有自己去实现过,哈哈 ,明天再去实现!
附:
ForEachForkActionHandler 例子的URL:http://wiki.jboss.org/wiki/Wiki.jsp?page=ForEachForkActionHandler
相关讨论URL:http://www.jboss.com/index.html?module=bb&op=viewtopic&t=80768&view=previous
3 楼 liaozxbj 2011-09-15 14:47
2 楼 zhdl2008 2011-08-16 11:25
1 楼 qq83004003 2010-01-20 17:15