Correlations are not working properly after a redeployment due to an ORABPEL-02041 error (Doc ID 2008291.1)

Last updated on APRIL 04, 2017

Applies to:

Oracle Business Process Management Suite - Version 11.1.1.7.0 and later
Information in this document applies to any platform.

Symptoms

Correlations are not working properly after project redeployment.

 

Here is the use case:
  
An instance is created with a correlation key and it uses an Event Subprocess. The event subprocess listens on that correlation.  The project is redeployed choosing the option to keep running instances, that instance is completed, and a new instance with the same correlation value is created.  At this point if you try to send a correlated message to the event subprocess in the newly created instance it will not work correctly. It will end up sending the message to the original instance which is already completed. This will result in the following error:

 

[2015-02-12T19:09:08.943-06:00] [AdminServer] [ERROR] [] [oracle.soa.bpel.system] [tid: orabpel.engine.pool-11.thread-13] [userId: ] [ecid: 11d1def534ea1be0:566232f4:14b80780a5c:-8000-00000000000000b1,1:17281] [APP: soa-infra] [composite_instance_id: 50003] [component_instance_id: 200115] [composite_name: TestEventSubProcess] [component_name: Humantask1] Error while invoking bean "cube delivery": Cannot access instance.[[
The action "resume" cannot be performed on the instance "50001" because of its current state ("closed.completed").
The current instance state did not allow the requested action to be performed.
Consult the product documentation for a list of all the permissible actions that can be performed on an instance when it is in the "closed.completed" state.
 ORABPEL-02041

Cannot access instance.
The action "resume" cannot be performed on the instance "50001" because of its current state ("closed.completed").
The current instance state did not allow the requested action to be performed.
Consult the product documentation for a list of all the permissible actions that can be performed on an instance when it is in the "closed.completed" state.

at com.collaxa.cube.engine.CubeEngine.checkIfCanAccess(CubeEngine.java:4417)
at com.collaxa.cube.engine.CubeEngine._callbackPerformer(CubeEngine.java:1375)
at com.collaxa.cube.engine.CubeEngine.callbackPerformer(CubeEngine.java:1340)
at com.collaxa.cube.engine.delivery.DeliveryHelper.callbackPerformer(DeliveryHelper.java:396)
at com.collaxa.cube.engine.delivery.DeliveryService.handleCallback(DeliveryService.java:828)
at com.collaxa.cube.engine.delivery.DeliveryService.handleCallback(DeliveryService.java:738)
at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleCallback(CubeDeliveryBean.java:359)
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 com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy272.handleCallback(Unknown Source)
at oracle.bpm.bpmn.engine.ejb.impl.BPMNDeliveryBean_of8dk6_ICubeDeliveryLocalBeanImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:39)
at oracle.bpm.bpmn.engine.ejb.impl.BPMNDeliveryBean_of8dk6_ICubeDeliveryLocalBeanImpl.handleCallback(Unknown Source)
at com.collaxa.cube.engine.dispatch.message.instance.CallbackDeliveryMessageHandler.handle(CallbackDeliveryMessageHandler.java:45)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:141)
at com.collaxa.cube.engine.dispatch.BaseDispatchTask.process(BaseDispatchTask.java:89)
at com.collaxa.cube.engine.dispatch.BaseDispatchTask.run(BaseDispatchTask.java:65)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at com.collaxa.cube.engine.dispatch.Dispatcher$ContextCapturingThreadFactory$2.run(Dispatcher.java:933)
at java.lang.Thread.run(Thread.java:662)

]]

 

 

 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms