-
Bug
-
Resolution: Unresolved
-
Major
-
jBPM 4.4
The intent of the JPDL below is to model a workflow in which EITHER task1 OR task2, AND task3 must be completed, in any order.
When the workflow starts, task1, task2 and task3 are all active, as expected. If I complete task3 first, then the workflow waits for me to complete either task1 or task2, and then completes. This works as expected.
If I first complete either task1 or task2, the expected behavior is that the execution should be waiting for completion of task3. However, the observed behavior is that the workflow completes as soon as either task1 or task2 is completed, without waiting for task3.
Workflow JPDL:
<process key="join_test" name="join_test" xmlns="http://jbpm.org/4.4/jpdl"> <start name="start"> <transition to="fork1"/> </start> <fork name="fork1"> <transition to="fork2"/> <transition to="task3"/> </fork> <fork name="fork2"> <transition to="task1"/> <transition to="task2"/> </fork> <task name="task1"> <transition to="join1"/> </task> <task name="task2"> <transition to="join1"/> </task> <task name="task3"> <transition to="join2"/> </task> <join name="join1" multiplicity="1"> <transition to="join2" /> </join> <join name="join2"> <transition to="end"/> </join> <end name="end"/> </process>