Wednesday, February 28, 2018

Oracle SOA - BPEL - forEach or FlowN executing the same Partnerlink in parallel

Problem:

When you try execute a Partnerlink in parallel inside a forEach or FlowN, you must set the property NonBlockingInvoke = true at the Partnerlink.

But, when you try to execute it, you receive this error:

<Error> <oracle.soa.bpel.engine.dispatch> <BEA-000000> <Failed to handle message class com.collaxa.cube.engine.dispatch.message.invoke.NonBlockInvokeMessage, Error message : Failed to create "java:comp/env/ejb/local/bpel/CubeDeliveryBean" bean; exception reported is: "javax.naming.NameNotFoundException: remaining name: ejb/local/bpel/CubeDeliveryBean


Solution:

By default BPEL Partnerlinks are defined at Global level. 

You must move the Partnerlink definition from Global to a local scope inside the forEach or FlowN, 
inside the  element 

<partnerLinks>
...
</partnerLinks>

Hope it helps.


No comments: