Hide Forgot
Link type: Superset, Source: SOA-3072, Destination: SOA-3077 Help Desk Ticket Reference: https://na7.salesforce.com/500A0000007Ax8y Steps to Reproduce: Use bpm_orchestration1 quickstart, and change the processdefinition.xml like this: <node name="node1"> <action name="action2" class="org.jboss.soa.esb.services.jbpm.actionhandlers.EsbActionHandler"> <esbCategoryName>BPM_Orchestration_Service1</esbCategoryName> <esbServiceName>Service1</esbServiceName> <bpmToEsbVars> <mapping bpm="theBody" esb="BODY_CONTENT" /> </bpmToEsbVars> <esbToBpmVars> <mapping esb="BODY_CONTENT" bpm="theBody" /> </esbToBpmVars> </action> <timer name="exception_timer" duedate="20seconds" transition="time-out-transition"/> <transition to="node2"></transition> <transition to="end1" name="time-out-transition"/> </node> project_key: SOA Adding a timer as described in the timeout scenario of the jBPM-to-ESB Exception Handling Chapter of the ESB Services Guide leads to the following ERROR in the log when the timer is executed: 16:04:05,318 ERROR [JmsServerSession] Unexpected error delivering message delegator->JBossMessage[5347551745671169]:PERSISTENT, deliveryId=0 org.jbpm.JbpmException: could not process message delegator->JBossMessage[5347551745671169]:PERSISTENT, deliveryId=0 at org.jboss.soa.esb.services.jbpm.integration.command.AbstractMessageListener.onMessage(AbstractMessageListener.java:126) at org.jboss.soa.esb.services.jbpm.integration.command.JobListener.onMessage(JobListener.java:16) 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.jboss.internal.soa.esb.dependencies.JCAInflowAdapter$1.invoke(JCAInflowAdapter.java:276) at org.jboss.soa.esb.listeners.jca.EndpointProxy.delivery(EndpointProxy.java:258) at org.jboss.soa.esb.listeners.jca.EndpointProxy.invoke(EndpointProxy.java:150) at $Proxy302.onMessage(Unknown Source) at org.jboss.resource.adapter.jms.inflow.JmsServerSession.onMessage(JmsServerSession.java:179) at org.jboss.jms.client.container.ClientConsumer.callOnMessageStatic(ClientConsumer.java:160) at org.jboss.jms.client.container.SessionAspect.handleRun(SessionAspect.java:831) at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect_z_handleRun_14978629.invoke(SessionAspect_z_handleRun_14978629.java) at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:172) at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86) at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102) at org.jboss.jms.client.delegate.ClientSessionDelegate.run(ClientSessionDelegate.java) at org.jboss.jms.client.JBossSession.run(JBossSession.java:199) at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:236) at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:205) at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260) 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:619) Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [org.jbpm.job.Timer#2] at org.hibernate.impl.SessionFactoryImpl$2.handleEntityNotFound(SessionFactoryImpl.java:418) at org.hibernate.proxy.AbstractLazyInitializer.checkTargetState(AbstractLazyInitializer.java:154) at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:143) at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:174) at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:190) at org.jbpm.job.Timer_$$_javassist_68.getProcessInstance(Timer_$$_javassist_68.java) at org.jboss.soa.esb.services.jbpm.integration.job.ExecuteTimerCommand.execute(ExecuteTimerCommand.java:68) at org.jboss.soa.esb.services.jbpm.integration.command.AbstractMessageListener.onMessage(AbstractMessageListener.java:66) ... 25 more The code added with rev 35477 should happen after the JobUtil.isDeleted(timer) check.
Link: Added: This issue incorporates SOA-3077
Link: Added: This issue depends JBESB-3668
Ported fix across to ESB, should be in ER4
Verified in ER6