[jboss-user] [JBoss jBPM] - Decision node has problem with the handler class.

rainhust do-not-reply at jboss.com
Wed Jan 2 03:04:27 EST 2008


the jpdl:

  | <task-node name="chief examine">
  | 		<description>
  | 			??????
  | 		</description>
  | 		<task name="chief examine">
  | 			<description>
  | 				????
  | 			</description>
  | 			<assignment class="demo.workflow.assignment.ChiefAssignment"></assignment>
  | 			<controller>
  | 				<variable access="read" name="reimbursementId" mapped-name="rid"></variable>
  | 			</controller>
  | 		</task>
  | 		<transition to="requester fix the reimbursement form" name="need modify form"></transition>
  | 		<transition to="decision" name="to result"></transition>
  | 	</task-node>
  | 
  | <decision name="decision">
  | 		<description>
  | 			????
  | 		</description>
  | 		<handler class="demo.workflow.action.DecisionProcess"></handler>
  | 		<transition to="handle result" name="to result"></transition>
  | 		<transition to="boss examine" name="to boss examine"></transition>
  | 		<transition to="financial affairs process" name="to financial affairs process"></transition>
  | 	</decision>
  | 
  | 

use this code to end the taskInstance:

  | public static void main(String[] args) {
  | 		JbpmConfiguration config=JbpmConfiguration.getInstance();
  | 	    JbpmContext jbpmContext=config.createJbpmContext();
  | 	    
  | 	    TaskInstance ti = jbpmContext.getTaskInstance(18);
  | 	    
  | 	    ti.end("to result"); // this will go to the Decision node,cause exception
  | //ti.end("need modify form"); // if use this test, everything is ok.
  | 	    jbpmContext.close();
  | 
  | 
  | 	}
  | 

when the process go to the Decision node , cause error.

15:56:21,764 [main] DEBUG Token : token[9] is unlocked by token[9]
  | 15:56:21,780 [main] ERROR GraphElement : action threw exception: id to load is required for loading
  | java.lang.IllegalArgumentException: id to load is required for loading
  | 	at org.hibernate.event.LoadEvent.<init>(LoadEvent.java:51)
  | 	at org.hibernate.event.LoadEvent.<init>(LoadEvent.java:33)
  | 	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:812)
  | 	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
  | 	at demo.workflow.action.ProcessResultAction.execute(ProcessResultAction.java:24)
  | 	at org.jbpm.graph.def.Action.execute(Action.java:122)
  | 	at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:264)
  | 	at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:220)
  | 	at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:190)
  | 	at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:174)
  | 	at org.jbpm.graph.def.Node.enter(Node.java:303)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$42da374e.enter(<generated>)
  | 	at org.jbpm.graph.def.Transition.take(Transition.java:151)
  | 	at org.jbpm.graph.def.Node.leave(Node.java:394)
  | 	at org.jbpm.graph.exe.ExecutionContext.leaveNode(ExecutionContext.java:136)
  | 	at org.jbpm.graph.node.Decision.execute(Decision.java:152)
  | 	at org.jbpm.graph.def.Node.enter(Node.java:319)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$42da374e.enter(<generated>)
  | 	at org.jbpm.graph.def.Transition.take(Transition.java:151)
  | 	at org.jbpm.graph.def.Node.leave(Node.java:394)
  | 	at org.jbpm.graph.node.TaskNode.leave(TaskNode.java:209)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.node.TaskNode$$EnhancerByCGLIB$$7edde70c.leave(<generated>)
  | 	at org.jbpm.graph.exe.Token.signal(Token.java:195)
  | 	at org.jbpm.graph.exe.Token.signal(Token.java:166)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.exe.Token$$EnhancerByCGLIB$$7233a4ca.signal(<generated>)
  | 	at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:488)
  | 	at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:427)
  | 	at com.hundsun.bpm.console.Test.main(Test.java:20)
  | Exception in thread "main" org.jbpm.graph.def.DelegationException: id to load is required for loading
  | 	at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:387)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.def.ProcessDefinition$$EnhancerByCGLIB$$fe0fb99e.raiseException(<generated>)
  | 	at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:378)
  | 	at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:281)
  | 	at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:220)
  | 	at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:190)
  | 	at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:174)
  | 	at org.jbpm.graph.def.Node.enter(Node.java:303)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$42da374e.enter(<generated>)
  | 	at org.jbpm.graph.def.Transition.take(Transition.java:151)
  | 	at org.jbpm.graph.def.Node.leave(Node.java:394)
  | 	at org.jbpm.graph.exe.ExecutionContext.leaveNode(ExecutionContext.java:136)
  | 	at org.jbpm.graph.node.Decision.execute(Decision.java:152)
  | 	at org.jbpm.graph.def.Node.enter(Node.java:319)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$42da374e.enter(<generated>)
  | 	at org.jbpm.graph.def.Transition.take(Transition.java:151)
  | 	at org.jbpm.graph.def.Node.leave(Node.java:394)
  | 	at org.jbpm.graph.node.TaskNode.leave(TaskNode.java:209)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.node.TaskNode$$EnhancerByCGLIB$$7edde70c.leave(<generated>)
  | 	at org.jbpm.graph.exe.Token.signal(Token.java:195)
  | 	at org.jbpm.graph.exe.Token.signal(Token.java:166)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  | 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  | 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  | 	at java.lang.reflect.Method.invoke(Method.java:585)
  | 	at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
  | 	at org.jbpm.graph.exe.Token$$EnhancerByCGLIB$$7233a4ca.signal(<generated>)
  | 	at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:488)
  | 	at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:427)
  | 	at com.hundsun.bpm.console.Test.main(Test.java:20)
  | Caused by: java.lang.IllegalArgumentException: id to load is required for loading
  | 	at org.hibernate.event.LoadEvent.<init>(LoadEvent.java:51)
  | 	at org.hibernate.event.LoadEvent.<init>(LoadEvent.java:33)
  | 	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:812)
  | 	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
  | 	at demo.workflow.action.ProcessResultAction.execute(ProcessResultAction.java:24)
  | 	at org.jbpm.graph.def.Action.execute(Action.java:122)
  | 	at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:264)
  | 	... 41 more
  | 

how to solve this problem:  id to load is required for loading.

any suggestion! thanks.

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

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



More information about the jboss-user mailing list