timer in sub-process differences jbpm4.3 - jbpm 4.4
zalmolksis Apr 16, 2013 11:45 AMwe are updating in our sistem from jbpm 4.3 to 4.4 and we have a problem with timeout timer in subprocess
this code is working in jbpm 4.3 :
<sub-process name="prc1" sub-process-key="prc1"> <parameter-in subvar="pc" var="pc"/> <parameter-out subvar="pc" var="pc"/> <transition name="timeout" to="prcTimedOut"> <timer duedate="#{dueTimeInSeconds}"/> </transition> <transition name="end" to="markProcessAsEnded"/> </sub-process> <java continue="async" expr="#{prcProcessor}" method="prcTimeout" name="prcTimedOut"> <arg><object expr="#{pc}"/></arg> <transition to="markProcessAsEnded"/> </java>
in jbpm 4.4 we get exception when timer fires :
[16/04/13 18:39:03:003] [pool-11-thread-1] ERROR org.jbpm.pvm.internal.cmd.ExecuteJobCmd: exception while executing 'timer[140008|2013-04-16 18:38:57|timeout]' org.jbpm.api.JbpmException: execution[prcMain.9JPOVJXl7JQQTnSvyZWJzQAAAAAAAAAAAAAAAAAAAAA=.prc1.140007] has running subprocess: execution[prc1.140009] in state active-root at org.jbpm.pvm.internal.model.ExecutionImpl.checkActive(ExecutionImpl.java:1086) at org.jbpm.pvm.internal.model.ExecutionImpl.signal(ExecutionImpl.java:424) at org.jbpm.pvm.internal.model.ExecutionImpl.signal(ExecutionImpl.java:416) 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:597) at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157) at org.jbpm.pvm.internal.model.ExecutionImpl$$EnhancerByCGLIB$$80e585a7.signal(<generated>) at org.jbpm.pvm.internal.job.TimerImpl.execute(TimerImpl.java:92) at org.jbpm.pvm.internal.job.TimerImpl.execute(TimerImpl.java:50) at org.jbpm.pvm.internal.cmd.ExecuteJobCmd.execute(ExecuteJobCmd.java:79) at org.jbpm.pvm.internal.cmd.ExecuteJobCmd.execute(ExecuteJobCmd.java:41) at org.jbpm.pvm.internal.svc.DefaultCommandService.execute(DefaultCommandService.java:42) at org.jbpm.pvm.internal.tx.SpringCommandCallback.doInTransaction(SpringCommandCallback.java:45) at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:128) at org.jbpm.pvm.internal.tx.SpringTransactionInterceptor.execute(SpringTransactionInterceptor.java:49) 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:56) at org.jbpm.pvm.internal.jobexecutor.JobParcel.run(JobParcel.java:48) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at java.util.concurrent.FutureTask.run(FutureTask.java:138) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662)
can someone point me to a good documentation , because in developer guide I dit not found info i need
Thanks !