[jboss-user] [JBoss jBPM] - Problem with a decision node in a fork, join construct.

janvandeklok do-not-reply at jboss.com
Mon Dec 15 04:07:05 EST 2008


Hello,

 I'm using jbpm 3.3.0.  and we noticed a problem with the following process construction:

 a fork that splits into 3 decision nodes, these decision nodes transition to either a task node or directly toi the join.
Transitions from the decision to the task node are OK,  transitions from the decision node directly to the join will throw a StaleObject  Exception when trying to update a token for the fork.

We use Oracle 10  as the database.

Is it a bug or what ??

any help is appreciated!

Jan van de Klok

Below is the processdefinition used: 


  | <process-definition  xmlns=""  name="preConditionCheckUL">
  | 
  |   <start-state name="start-state1">
  |     <transition to="fork1"></transition>
  |   </start-state>
  | 
  |   <task-node name="Controleer student gegevens">
  |     <description>
  |       De verzamelde gegevens van student worden gecontroleerd 
  |     </description>
  |     <task name="Invoer resultaat controle student gegevens">
  |       <description>
  |         Taak voor controle juistheid gegevens en invoer resultaat
  |       </description>
  |       <assignment pooled-actors="#{actor.groupActorIds}"></assignment>
  |     </task>
  |     <transition to="end-state1"></transition>
  |   </task-node>
  | 
  |   <fork name="fork1">
  |     <transition to="paspoort per post" name="to reg Pasport"></transition>
  |     <transition to="diploma per post" name="to Registratie ontvangst diploma"></transition>
  |     <transition to="inschrijfgeld vereist" name="to Registratie ontvangst inschrijfgeld"></transition>
  |   </fork>
  | 
  |   <task-node name="Registratie ontvangst paspoort">
  |     <description>
  |       Registratie ontvangst paspoort #{studentStatus.actorId}
  |     </description>
  |     <task name="Registreren ontvangst paspoort">
  |       <description>
  |         Registreren dat kopie paspoort is ontvangen per post #{studentStatus.actorId}
  |       </description>
  |       <assignment pooled-actors="#{studentStatus.pooledActors}"></assignment>
  |     </task>
  |     <transition to="join1"></transition>
  |   </task-node>
  | 
  |   <task-node name="Registratie ontvangst diploma">
  |     <description>
  |       Registratie ontvangst diploma
  |     </description>
  |     <task name="Registreren ontvangst diploma">
  |       <description>
  |         Registreren dat kopie diploma is ontvangen per post voor #{studentStatus.actorId}
  |       </description>
  |       <assignment pooled-actors="#{studentStatus.pooledActors}"></assignment>
  |     </task>
  |     <transition to="join1" name="from reg diploma"></transition>
  |   </task-node>
  | 
  |   <task-node name="Registratie ontvangst inschrijfgeld">
  |     <description>
  |       Registratie ontvangst inschrijfgeld voor #{studentStatus.actorId}
  |     </description>
  |     <task name="Registreren ontvangst inschrijfgeld">
  |       <description>
  |         Registreren dat inschrijfgeld is betaald voor #{studentStatus.actorId}
  |       </description>
  |       <assignment pooled-actors="#{studentStatus.pooledActors}"></assignment>
  |     </task>
  |     <transition to="join1" name="from inschrijfgeld"></transition>
  |   </task-node>
  | 
  |   <join name="join1">
  |     <transition to="Controleer student gegevens"></transition>
  |   </join>
  | 
  |   <decision name="paspoort per post">
  |     <handler class="nl.chronotech.ibis.task.PasportByPostDecision"/>
  |     <transition to="Registratie ontvangst paspoort" name="byPost"></transition>
  |     <transition to="join1" name="upload"></transition>
  |   </decision>
  | 
  |   <decision name="diploma per post">
  |     <handler class="nl.chronotech.ibis.task.DiplomaByPostDecision"/>
  |     <transition to="Registratie ontvangst diploma" name="byPost"></transition>
  |     <transition to="join1" name="upload"></transition>
  |   </decision>
  | 
  |   <decision name="inschrijfgeld vereist" expression="#{chosenInstitution eq 'Universiteit Leiden'}">
  |     <transition to="Registratie ontvangst inschrijfgeld" name="true"></transition>
  |     <transition to="join1" name="false"></transition>
  |   </decision>
  | 
  |   <end-state name="end-state1">
  |   </end-state>
  | 
  | </process-definition>

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

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



More information about the jboss-user mailing list