I changed the process definition <process-definition xmlns="urn:jbpm.org:jpdl-3.2" name="listingloads"> | <start-state name="load new file"> | <transition to="fork1"> | </transition> | </start-state> | <node name="fork1"> | <action class="com.ldg.bpm.handler.fork.ForEachForkActionHandler"> | </action> | <transition to="process-state2"></transition> | </node> | <process-state name="process-state2"> | <sub-process name="processlistings"/> | <transition to="join1"></transition> | </process-state> | <join name="join1"> | <transition to="end"></transition> | </join> | <end-state name="end"></end-state> | </process-definition>
Action ********* public void execute(final ExecutionContext executionContext) throws Exception | { | final Token rootToken = executionContext.getToken(); | final Node node = executionContext.getNode(); | final List argSets = new LinkedList(); | | for (int i = 0; i < node.getLeavingTransitions().size(); i++) { | final Transition transition = (Transition) node.getLeavingTransitions().get(0); | | for (int j = 0; j < 2; j++) { | | final Token newToken = new Token(rootToken, FOREACH_PREFIX + node.getId() + "." + j); | | newToken.setTerminationImplicit(true); | executionContext.getJbpmContext().getSession().save(newToken); | | final ExecutionContext newExecutionContext = new ExecutionContext( newToken ); | newExecutionContext.getContextInstance().createVariable( "message", "data " + j, newToken); | argSets.add(new Object[] {newExecutionContext, transition}); | } | } | | for (int i = 0; i < argSets.size(); i++) | { | final Object[] args = (Object[]) argSets.get(i); | node.leave((ExecutionContext) args[0], (Transition) args[1]); | } | } And I get this error 11:08:45,020 ERROR [GraphElement] action threw exception: can't create a process instance when processDefinition is null | org.jbpm.JbpmException: can't create a process instance when processDefinition is null | at org.jbpm.graph.exe.ProcessInstance.<init>(ProcessInstance.java:129) | at org.jbpm.graph.exe.ProcessInstance.<init>(ProcessInstance.java:93) | at org.jbpm.graph.exe.Token.createSubProcessInstance(Token.java:621) | at org.jbpm.graph.node.ProcessState.execute(ProcessState.java:146) | at org.jbpm.graph.def.Node.enter(Node.java:314) | at sun.reflect.GeneratedMethodAccessor281.invoke(Unknown Source) | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) | at java.lang.reflect.Method.invoke(Method.java:585) | at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173) | at org.jbpm.graph.def.Node_$$_javassist_49.enter(Node_$$_javassist_49.java) | at org.jbpm.graph.def.Transition.take(Transition.java:151) | at org.jbpm.graph.def.Node.leave(Node.java:389) | at com.ldg.bpm.handler.fork.ForEachForkActionHandler.execute(ForEachForkActionHandler.java:52) Could you help me to fix this? Thanks View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4196925#4196925 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4196925 _______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user