[jboss-user] [jBPM] - NullPointerException when timeout transition maps to a Java activity

Sameeh Harfoush do-not-reply at jboss.com
Tue Mar 30 03:47:33 EDT 2010


Sameeh Harfoush [http://community.jboss.org/people/sameeh.harfoush] created the discussion

"NullPointerException when timeout transition maps to a Java activity"

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

--------------------------------------------------------------
Hello,
Below is a section of a workflow I am working on 
When triggering the timer the transition “Manager timeout” goes to  the java activity “Send timesheet to accounts” and executes the “manageTimesheet” method which only executes System.out to the console. All goes well but I always get the below null pointer exception. 
I tried mapping the transition to other than java task it works fine. The problem is in my implantation or the jpdl Timer?

Thanks

        <task g="105,159,156,52" name="Manager reviews timesheet">
            <assignment-handler>
                <field name="assignee">
                    <string value="Mahmoud" />
                </field>
            </assignment-handler>


            <transition g="433,186;435,673:-43,-16" name="Manager timeout"  to="Send timesheet to accounts">
                <timer duedate="1 hour" />
            </transition>
            <transition g="-68,-18" name="Manager decision" to="Manager evaluation" />
        </task>
        <decision g="159,267,48,48" name="Manager evaluation">
            <handler />
            <transition g="-93,-11" name="Approve" to="Send timesheet to accounts" />
            <transition g="348,292;352,673:-82,-206" name="Reject" to="Employee submits timesheet" />
        </decision>
        <java g="102,356,163,52"
            method="manageTimesheet" name="Send timesheet to accounts">
            <transition g="-83,-8" name="to Bookkeeper"    to="Bookkeeper reviews and posts timesheet" />
        </java>
        
        
### EXCEPTION ###########################################
10:25:51,983 SEV   | [ExecuteJobCmd] exception while executing 'timer[550012|2010-03-30 11:25:51,000|Manager timeout]'
java.lang.NullPointerException
    at org.jbpm.pvm.internal.wire.usercode.UserCodeReference.getProcessDefinition(UserCodeReference.java:75)
    at org.jbpm.pvm.internal.wire.usercode.UserCodeReference.getObject(UserCodeReference.java:60)
    at org.jbpm.pvm.internal.wire.usercode.UserCodeReference.getObject(UserCodeReference.java:51)
    at org.jbpm.pvm.internal.model.ExecutionImpl.initializeAssignments(ExecutionImpl.java:759)
    at org.jbpm.jpdl.internal.activity.TaskActivity.execute(TaskActivity.java:95)
    at org.jbpm.jpdl.internal.activity.TaskActivity.execute(TaskActivity.java:58)
    at org.jbpm.pvm.internal.model.op.ExecuteActivity.perform(ExecuteActivity.java:60)
    at org.jbpm.pvm.internal.model.ExecutionImpl.performAtomicOperationSync(ExecutionImpl.java:656)
    at org.jbpm.pvm.internal.model.ExecutionImpl.performAtomicOperation(ExecutionImpl.java:616)
    at org.jbpm.pvm.internal.model.op.TransitionEndActivity.perform(TransitionEndActivity.java:58)
    at org.jbpm.pvm.internal.model.ExecutionImpl.performAtomicOperationSync(ExecutionImpl.java:656)
    at org.jbpm.pvm.internal.model.ExecutionImpl.performAtomicOperation(ExecutionImpl.java:616)
    at org.jbpm.pvm.internal.model.ExecutionImpl.signal(ExecutionImpl.java:417)
    at org.jbpm.pvm.internal.model.ExecutionImpl.signal(ExecutionImpl.java:403)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:197)
    at org.jbpm.pvm.internal.model.ExecutionImpl_$$_javassist_5.signal(ExecutionImpl_$$_javassist_5.java)
    at org.jbpm.pvm.internal.job.TimerImpl.execute(TimerImpl.java:91)
    at org.jbpm.pvm.internal.job.TimerImpl.execute(TimerImpl.java:52)
    at org.jbpm.pvm.internal.cmd.ExecuteJobCmd.execute(ExecuteJobCmd.java:76)
    at org.jbpm.pvm.internal.cmd.ExecuteJobCmd.execute(ExecuteJobCmd.java:42)
    at org.jbpm.pvm.internal.svc.DefaultCommandService.execute(DefaultCommandService.java:42)
    at org.jbpm.pvm.internal.tx.StandardTransactionInterceptor.execute(StandardTransactionInterceptor.java:54)
    at org.jbpm.pvm.internal.svc.EnvironmentInterceptor.executeInNewEnvironment(EnvironmentInterceptor.java:53)
    at org.jbpm.pvm.internal.svc.EnvironmentInterceptor.execute(EnvironmentInterceptor.java:40)
    at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:55)
    at org.jbpm.pvm.internal.svc.SkipInterceptor.execute(SkipInterceptor.java:43)
    at org.jbpm.pvm.internal.svc.ManagementServiceImpl.executeJob(ManagementServiceImpl.java:37)
    at com.roxana.test.jpdl.EmployeeTimesheetTest.testEmployeeTimesheetWorkflow(EmployeeTimesheetTest.java:52)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at junit.framework.TestCase.runTest(TestCase.java:164)
    at org.jbpm.test.BaseJbpmTestCase.runTest(BaseJbpmTestCase.java:80)
    at junit.framework.TestCase.runBare(TestCase.java:130)
    at junit.framework.TestResult$1.protect(TestResult.java:106)
    at junit.framework.TestResult.runProtected(TestResult.java:124)
    at junit.framework.TestResult.run(TestResult.java:109)
    at junit.framework.TestCase.run(TestCase.java:120)
    at junit.framework.TestSuite.runTest(TestSuite.java:230)
    at junit.framework.TestSuite.run(TestSuite.java:225)
    at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)      

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

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

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/20100330/e1c4420b/attachment.html 


More information about the jboss-user mailing list