Hi, I have a task node with two transitions and a task attached to it.The code is as follows..
| <task-node name="HOD_Approval"> | <event type="node-enter"> | <action class="com.sample.action.ProcessAction" accept-propagated-events="false"></action> | </event> | <transition to="Finance_Approval" name="Accepted"></transition> | <transition to="end-state" name="Denied"></transition> | </task-node> Inside ProcessAction class I am accepting the decision from user and want to go to the next transition accordingly.. | public class ProcessAction implements ActionHandler { | | private static final long serialVersionUID = 1L; | | public void execute(ExecutionContext executionContext) throws Exception { System.out.println("######################---------ProcessAction------------1-----------------###################### ."); | System.out.println("This Node is---"+executionContext.getNode().getName()); | System.out.print("Enter your decission: "); | BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); | | String decission = null; | try { | decission = br.readLine(); | } catch (IOException ioe) { | System.out.println("IO error trying to read your decission!"); | } | System.out.println("Thanks for the desission, " + decission); | System.out.println("######################---------ProcessAction------------2-----------------###################### ."); | if(decission != null && decission.equalsIgnoreCase("a")){ | | System.out.println("######################---------ProcessAction----a--------3-----------------###################### ."); | executionContext.getTaskInstance().end("Accepted"); | } | else if(decission != null && decission.equalsIgnoreCase("d")){ | | System.out.println("######################---------ProcessAction-----d-------3-----------------###################### ."); | executionContext.leaveNode("Denied"); | } | else if(decission != null && decission.equalsIgnoreCase("c")){ | System.out.println("######################---------ProcessAction-----c-------3-----------------###################### ."); | | executionContext.leaveNode("checkBudget"); | } | else{ | System.out.println("Error trying to read your decission!..Enter only a/d "); | } | | } | } | With this the flow is navigating correctly to the next node as per the decision, But after reaching end -state , again the process is selecting a default transition ..where as it should stop, at end node.. The class I am using to invoke the jBPM is as follows.. | public class TravelProcessTest extends TestCase { | | public static void main(String args[])throws Exception { | new TravelProcessTest().execute(); | } | public void execute() throws Exception { | JbpmConfiguration jbpmConfiguration = JbpmConfiguration.getInstance(); | JbpmContext jbpmContext = jbpmConfiguration.createJbpmContext(); | | // Extract a process definition from the processdefinition.xml file. | ProcessDefinition processDefinition = ProcessDefinition.parseXmlResource("simple/processdefinition.xml"); | //HashMap map = new HashMap(); | | //map.put("travelDate",new Integer(100)); | //map.put("travelPeriod",new Integer(50)); | | //Create an instance of the process definition. | //ProcessInstance instance = new ProcessInstance(processDefinition,map); | ProcessInstance instance = new ProcessInstance(processDefinition); | System.out.println("--------------------1-----------------######### ."); | displayStatus(instance); | System.out.println("---------------------2-----------------########## ."); | instance.signal(); | | System.out.println("---------------------3-----------------###########."); | displayStatus(instance); | System.out.println("---------------------4-----------------###########."); | instance.end(); | | | } | | private void displayStatus(ProcessInstance instance) { | String nodeName = instance.getRootToken().getNode().getName(); | System.out.println("You are now in node: "+nodeName); | | } | } | | | Can you please suggest what is going wrong.. so that even after reaching end state , the process is again propagating to another transition.. View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4247506#4247506 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4247506 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user