4 Replies Latest reply on Jun 7, 2006 7:03 PM by Frank Lawlor

    sub-process invocation problem

    Frank Lawlor Newbie

      I am trying a simple test of having a process invoke a subprocess.
      I'm running into a problem in that when the sub-process is invoked it is starting with the second node even though the start node has a task associated with it.

      That start task ("SSSSimple Start Task") never shows up in the tasklist and the variables associated with it are never defined.

      I am using jBPM 3.1.

      Below are the definition of the "SuperSimple" (caller) and "Simple" (callee) processes.

      <process-definition
       xmlns="urn:jbpm.org:jpdl-3.1" name="SuperSimple">
       <swimlane name="swimlane1">
       <assignment expression="user(grover)"></assignment>
       </swimlane>
       <start-state name="Super Startxx">
       <task name="Super Task" swimlane="swimlane1">
       <controller>
       <variable name="whatever"></variable>
       </controller>
       </task>
       <transition name="to call Simple" to="call simple"></transition>
       </start-state>
       <end-state name="end Super"></end-state>
       <process-state name="call simple">
       <sub-process name="simple" />
       <transition name="to after simple" to="After Simple Call"></transition>
       </process-state>
       <task-node name="After Simple Call">
       <task name="Task after simple call" swimlane="swimlane1">
       <controller>
       <variable name="wasOK"></variable>
       </controller>
       </task>
       <transition name="to end super" to="end Super"></transition>
       </task-node>
      </process-definition>
      
      
      <process-definition
       xmlns="urn:jbpm.org:jpdl-3.1"
       name="simple">
       <swimlane name="swimlane1">
       <assignment expression="user(grover)"></assignment>
       </swimlane>
       <start-state name="SSSSimple Start">
       <task name="SSSSimple Start Task" swimlane="swimlane1">
       <controller>
       <variable name="color"></variable>
       <variable name="size"></variable>
       </controller>
       </task>
       <transition name="" to="Simple task"></transition>
       </start-state>
       <end-state name="end Simple"></end-state>
       <task-node name="Simple task">
       <task name="Simple Task" swimlane="swimlane1">
       <controller>
       <variable name="taskVar"></variable>
       </controller>
       </task>
       <transition name="to end" to="end Simple"></transition>
       </task-node>
      </process-definition>