[jboss-user] [JBoss jBPM] - Synchronising tasks finish-to-finish

pojomonkey do-not-reply at jboss.com
Fri Feb 15 12:17:07 EST 2008


I've got a process definition that forks in one branch of a prior fork and then the 3 execution paths eventually join back up through 2 consecutive joins:
<?xml version="1.0" encoding="UTF-8"?>
  | <process-definition  xmlns=""  name="syncproblem">
  | 
  | 	<start-state name="start-state1">
  | 		<transition to="task-node1"></transition>
  | 	</start-state>
  | 
  | 	<task-node name="task-node1">
  | 		<transition to="fork1"></transition>
  | 	</task-node>
  | 
  | 	<fork name="fork1">
  | 		<transition to="task-node3"></transition>
  | 		<transition to="task-node2" name="to task-node2"></transition>
  | 	</fork>
  | 
  | 	<task-node name="task-node2" async="true">
  | 		<transition to="join2"></transition>
  | 	</task-node>
  | 
  | 	<task-node name="task-node3">
  | 		<transition to="fork2"></transition>
  | 	</task-node>
  | 
  | 	<fork name="fork2" async="true">
  | 		<transition to="task-node4"></transition>
  | 		<transition to="task-node5" name="to task-node5"></transition>
  | 	</fork>
  | 
  | 	<task-node name="task-node4" async="true">
  | 		<transition to="join1"></transition>
  | 	</task-node>
  | 
  | 	<task-node name="task-node5" async="true">
  | 		<transition to="task-node6"></transition>
  | 	</task-node>
  | 
  | 	<task-node name="task-node6" async="true">
  | 		<transition to="join1"></transition>
  | 	</task-node>
  | 
  | 	<join name="join1">
  | 		<transition to="join2"></transition>
  | 	</join>
  | 
  | 	<join name="join2">
  | 		<transition to="task-node7"></transition>
  | 	</join>
  | 
  | 	<task-node name="task-node7">
  | 		<transition to="end-state1"></transition>
  | 	</task-node>
  | 
  | 	<end-state name="end-state1"></end-state>
  | 
  | </process-definition>
  | 

This all works fine, except that I actually want to make sure that task-node4 does not (cannot) end before task-node6 completes, and similarly, I want task-node2 to delay completion until task-node4 has completed.

The process defintion as shown works ok, and I do get up to 3 tasks in the task list of the jbpm-console, but I can then end any of them in any order, whereas I actually need them to sequence as described above. 

Apart from an expression/script condition on the leaving transactions, is there a more elegant way to graph this?

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

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



More information about the jboss-user mailing list