Java 如何使用activiti bpmn完成第二项任务?

Java 如何使用activiti bpmn完成第二项任务?,java,alfresco,activiti,bpmn,Java,Alfresco,Activiti,Bpmn,有两个任务同时启动:ManagerReviewTask和DirectorReviewTask <userTask id="DirectorReviewTask" name="DirectorReviewTask"> <extensionElements> <activiti:taskListener event="complete" class="listeners.DirectorReviewTaskListener"/> &

有两个任务同时启动:
ManagerReviewTask
DirectorReviewTask

<userTask id="DirectorReviewTask" name="DirectorReviewTask">
    <extensionElements>
        <activiti:taskListener event="complete" class="listeners.DirectorReviewTaskListener"/>
    </extensionElements>
</userTask>
当:

  • DirectorReviewTask
    首先完成,
    ManagerReviewTask
    也应该完成(按编程方式)
  • ManagerReviewTask
    首先完成,工作流应等待指定用户完成
    DirectorReviewTask

我该怎么做?您能提供一个关于activiti xml的示例吗?

这是我如何将侦听器添加到
DirectorReviewTask
并完成
ManagerReviewTask
的方法

<userTask id="DirectorReviewTask" name="DirectorReviewTask">
    <extensionElements>
        <activiti:taskListener event="complete" class="listeners.DirectorReviewTaskListener"/>
    </extensionElements>
</userTask>
我认为你应该有一个并行网关:

<parallelGateway id="fork" />
<sequenceFlow sourceRef="fork" targetRef="ManagerReviewTask" />
<sequenceFlow sourceRef="fork" targetRef="DirectorReviewTask" />

<userTask id="ManagerReviewTask" name="ManagerReviewTask" />
<sequenceFlow sourceRef="ManagerReviewTask" targetRef="join" />

<userTask id="DirectorReviewTask" name="DirectorReviewTask">
    <extensionElements>
        <activiti:taskListener event="complete" class="listeners.DirectorReviewTaskListener"/>
    </extensionElements>
</userTask>
<sequenceFlow sourceRef="DirectorReviewTask" targetRef="join" />

<parallelGateway id="join" />
<sequenceFlow sourceRef="join" targetRef="GO_FROM_HERE" />

从BPMN的角度来看,您必须从以下选项中进行选择:

  • 在DirectorReviewTask(或作为其结束事件)之后添加发送信号(比如stopManagerReviewTask)。在ManagerReviewTask上,您需要将stopManagerReviewTask的处理添加为边界中断信号事件
  • 如果DirectorReviewTask是流程中的最后一个操作,请使用end terminate事件结束包含DirectorReviewTask的流

  • 在第1种情况下,您只需要考虑如何强制Actudio从同一进程中停止一个DealReVIEW任务,而不是所有实例并行运行。

    < P>一个相当标准的模式。一个标准的包容性网关和一个取消信号


    您是否也可以添加xml表示?如何获得java中的taskService服务?