[jboss-user] [JBoss jBPM] - fork and join childeren

tbeernot do-not-reply at jboss.com
Thu Nov 13 10:45:12 EST 2008


The 3.2.3 documentation says: "When the root execution path is forked into multiple concurrent execution paths, the root is the parent and the newly created execution paths are all children of the root."

So if I have this flow:


  | 		       S
  | 		       |
  | 		       F
  | 		      / \
  | 		     s1 s2
  | 		      \ /
  | 		       J
  | 		       |
  | 		       E
  | 

The when the signal comes on the start node, it moves to the fork (F). It should then fork two childeren and then move forward to the join (J) and wait for the two childeren to reach the J as well.

However, if I write out the active node from the parent's token I see this:
1. StartState(start)
2. Fork(fork1)
3. State(state1)
4. Join(join1)
5. EndState

As soon as the token enters 'fork1', it does get 1 child. The getChilderen returns another token which is in state1 immediately. Then the parent token can be moved forward through state1 and the join, all the way to the end state.

The documentation states: "This way, implementation of a join can become straightforward: the implementation of the join just has to verify if all sibling-execution-paths are already positioned in the join node. If that is the case, the parent execution path can resume execution leaving the join node."

However I can move the parent token all the way to the end node, without ever signalling its childeren.

1. I do not understand where the two childeren are when the fork is done.
2. I do not understand why the parent remains in the fork instead of jumping to the join.
3. I do not understand how I can move the parent token past the join.

Something it not matching up.

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

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



More information about the jboss-user mailing list