[jboss-user] [jBPM] - Subprocess wait state signal handling not working from parent process (jBPM 4.3)

apurv agnihotri do-not-reply at jboss.com
Wed May 26 10:38:17 EDT 2010


apurv agnihotri [http://community.jboss.org/people/apurv888] created the discussion

"Subprocess wait state signal handling not working from parent process (jBPM 4.3)"

To view the discussion, visit: http://community.jboss.org/message/544880#544880

--------------------------------------------------------------
Following is our main jPDL xml

<?xml version=+"1.0" encoding=+"UTF-8"?>   ++<process name=+"PresenceWorkflow" xmlns=+"http://jbpm.org/4.3/jpdl">
<start g=+"-9,225,80,40">
<transition to=+"wait for presence of user" /> 
</start>

<sub-process name=+"wait for presence of user" sub-process-key=+"waitForPresence" g=+"603,195,177,70">
<parameter-in subvar=+"userDetailsInstance" var=+"user"/><parameter-in subvar=+"timeoutPeriod" var=+"timeoutPeriodMain"/>
<parameter-out subvar=+"userDetailsInstance" var=+"user"/><parameter-out subvar=+"subinstanceid" var=+"subinstanceidMain"/>

<transition name=+"timeout" to=+"state1" g=+"-47,-20"/>
<transition name=+"success" to=+"state1" g=+"369,51:-28,-24"/>
</sub-process>
<end g=+"220,486,48,48" name=+"end1"/>
<end-error g=+"140,488,80,40" name=+"internal error"/>


<state g=+"649,418,92,52" name=+"state1" state=+"naas-wait">
</state> </process>


+++
++

xml version=+"1.0"+ encoding=+"UTF-8"+?>

<

process name=+"waitForPresence"+ xmlns=+http://jbpm.org/4.3/jpdl+>

<

start g=+"8,103,80,40"+>


     <transition to=+"wait for presence"+/></

start>


<

custom class=+"com.task.WaitForPresenceTask"+ g=+"121,105,100,52"+ name=+"wait for presence"+>



<transition to=+"task completion check for wait presnce"/+></

custom>

<

decision expr=+"#{TaskCompletionStatus}"+ name=+"task completion check for wait presence"+ g=+"287,117,110,92"+>


<transition name=+"Success"+ to=+"wait for presence update"+ g=+"-46,-20"+/>

<transition name=+"Failure"+ to=+"failure"+ g=+"-40,-20"+/></

decision>

<

state name=+"wait for presence update"+ g=+"482,114,210,40"+>


<on event=+"timeout"+>

<timer duedate=+"5 seconds"+/>

<event-listener class=+"com.task.WaitStateTimeoutListener"+>

</on>



<on event=+"start"+>

<event-listener class=+"com.eventlistener.WaitForPresenceStartEventListener"+>

<field name=+"subscriberVariableName"+><object expr=+"#{userDetailsInstance}"+/></field>

</event-listener>

</on>


<on event=+"end"+>

<event-listener class=+"com.eventlistener.WaitForPresenceCompletionEndEventListener"+>

<field name=+"subscriberVariableName"+><object expr=+"#{userDetailsInstance}"+/></field>

</event-listener>

</on>


<transition name=+"WAIT_STATE_TIMED_OUT"+ to=+"timeout"+ g=+"-142,-20"+/>

<transition name=+"AVAILABLE"+ to=+"test"+ g=+"-64,-9"+/>
</

state>


<

end name=+"success"+ g=+"666,410,80,40"+/>
<end name=+"failure"+ g=+"277,415,80,40"+/><


end name=+"timeout"+ g=+"445,414,48,84"+/>

</

process>

Sample test case extract:

// start the main process
final ProcessInstance processInstance =   executionService.startProcessInstanceByKey("PresenceWorkflow", variables,processInstanceKey);

//  send signal to  subprocess to get out of "wait for presence update" state.
executionService.signalExecutionById(processInstance.getId(),"AVAILABLE");
++ 
++ 
+++++++Problem faced:+++++++
++ 
+++++++1) Once execution resumes after sending the above signal workflow exists the subprocess without executing any subsequent tasks. For example, the end event listener is not invoked.+++++++
++ 
+++++++2) Unable to get the subprocess execution id. Even if we get the execution id via a hack, we get an exception sending the signal.+++++++
++++++
+++++++Any help would be very much appreciated.+++
++
++
++Following is the subprocess jPDL

+++
+++
++
++
++
++
+++

+
+
++



--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/544880#544880]

Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20100526/4701a73a/attachment-0001.html 


More information about the jboss-user mailing list