[jboss-user] [jBPM Users] - Re: nested forks

saraswati.santanu do-not-reply at jboss.com
Tue Nov 17 09:41:25 EST 2009


Sebastian,
    So far I understand, you have some flow like this:


  | <process name="ForumFlow2" xmlns="http://jbpm.org/4.0/jpdl">
  |    <start g="146,26,48,48" name="start1">
  |       <transition g="-43,-18" name="to fork1" to="fork1"/>
  |    </start>
  |    <fork g="148,100,48,48" name="fork1">
  |       <transition g="-44,-18" name="to task1" to="task1"/>
  |       <transition g="-44,-18" name="to task2" to="task3"/>
  |    </fork>
  |    <task g="205,191,92,52" name="task3">
  |       <transition g="-41,-18" name="to join1" to="join1"/>
  |    </task>
  |    <task g="59,196,92,52" name="task1">
  |       <transition g="-41,-18" name="to join1" to="join1"/>
  |    </task>
  |    <join g="152,287,48,48" name="join1" multiplicity="1">
  |       <transition g="-43,-18" name="to fork2" to="fork2"/>
  |    </join>
  |    <fork g="298,285,48,48" name="fork2">
  |       <transition g="-44,-18" name="to task3" to="task2"/>
  |       <transition g="-44,-18" name="to task1" to="task1"/>
  |    </fork>
  |    <task g="399,189,92,52" name="task2">
  |       <transition g="-41,-18" name="to join2" to="join2"/>
  |    </task>
  |    <task g="408,339,92,52" name="task1">
  |       <transition g="-41,-18" name="to join2" to="join2"/>
  |    </task>
  |    <join g="555,267,48,48" name="join2">
  |       <transition g="-42,-18" name="to end1" to="end1"/>
  |    </join>
  |    <end g="559,388,48,48" name="end1"/>
  | </process>
  | 

In the first fork-join, you complete only task2 and leave task1 open and move on to the second fork-join. There you have two more tasks task1 and task3. Now when you search for active tasks you get task1, task1 and task3. But you expect only task1 and task3 to come and the earlier task1 should not come.

To achieve this you need to cancel task1 while taking a transition from first join node. Otherwise incomplete task task1 will always appear in the active task lists.

I would definitely wish to have a join node which based on some configuration cancels all the pending tasks automatically. But so far nothing such is available.

I hope I got you problem correct. If not then that will establish Tom's point in the sticky - Give the jpdl and test case to get a solution quickly :)


View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4266108#4266108

Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4266108



More information about the jboss-user mailing list