JBPM(6.5) - 事件子流程中的两个启动事件

时间:2017-07-21 01:52:15

标签: jbpm bpmn

我正在使用JBPM 6.5,目前,我仍然处于需要使用不同事件启动进程的情况。

正如我们从这篇博客中看到的: http://blog.goodelearning.com/bpmn/common-bpmn-modeling-mistakes-best-practices-basic-events/

在一个进程中有多个启动事件是有意义的。但是,JBPM不支持它。

错误MSG:进程'abc'[abc.abc]:节点'创建子案例进程'[3]事件子进程不允许有多个起始节点。

我想要达到的目标是:

enter image description here

有解决方法吗?

我能想到的一个解决方案是拥有2个子流程。但是,我不认为这是最好的解决方案。因为我将有2个重复的子过程。

enter image description here

1 个答案:

答案 0 :(得分:0)

一种有用的思维方式是使用令牌(比如赌场)。每个开始事件创建一个,每个结束事件都会破坏一个,网关也会改变它们的数量。最重要的是,如果所有进程都已完成,则池的令牌数必须为零。或者换句话说(如在教程中):

  

如果某个流程实际上是由不同的触发器启动或以不同的结束   state,相应流程事件的名称应该是唯一的。

你的情况就是这个问题,即你的两个开始事件不是重叠的,可能会产生比你破坏更多的标记。在你的两个事件之后,通过网关的结构可以避免这种模糊性,但是我没有足够的关于你的情况的信息来判断它是否是XOR或AND。

PS:我不熟悉JBPM 6.5,但您的问题显然是语法问题,而非软件相关。