You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by "Kapoor, Harshit" <HK...@ciber.com> on 2009/03/23 15:49:54 UTC
Unable to configure Correlation
My BPEL process is as follows
RECEIVE REQUEST
RESPOND TO RECEIVED MESSAGE
INVOKE SERVICE A (Correlation ENTITY_ID pattern=out initiate=yes)
XXX RECEIVE MESSAGE FROM SERVICE B (Correlation ENTITY_ID)
RESPOND TO SERVICE B
I have used appropriate XPAths in WSDL file thus correlation is being initialized properly, and the RECEIVE at XXX waits till a message is sent.
The problem is that when it receives message following error is generated irrespective of the fact that ENTITY_ID matched or not.
DEBUG - GeronimoLog.debug(66) | Received request message for ReceiveWorkflowResponse.{http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}receive
DEBUG - GeronimoLog.debug(66) | Starting transaction.
DEBUG - GeronimoLog.debug(66) | Routed: svcQname {http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService --> BpelProcess[{http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252]
DEBUG - GeronimoLog.debug(66) | ODE routed to operation Operation: name=receive
style=REQUEST_RESPONSE,1
Input: name=null
Message: name={http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWFInput
Part: name=Request
elementName={http://www.ciber.com/GEIP/SOAPOC/CanonicalContent.xsd}ENVELOPE
Output: name=null
Message: name={http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWFOutput
Part: name=Response
elementName={http://www.ciber.com/GEIP/SOAPOC/CanonicalContent.xsd}ENVELOPE from service {http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService
DEBUG - GeronimoLog.debug(66) | Invoking ODE using MEX {MyRoleMex#hqejbhcnphr4523cbmfpjn [Client hqejbhcnphr4523cbmfpjm] calling {http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService.receive(...)}
DEBUG - GeronimoLog.debug(66) | Message content: <?xml version="1.0" encoding="UTF-8"?>
<message><Request><ENVELOPE><BODY><CUSTOMER ENTITY_ID="40102">...</CUSTOMER></BODY></ENVELOPE></Request></message>
DEBUG - GeronimoLog.debug(66) | Routed: svcQname {http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService --> BpelProcess[{http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252]
DEBUG - GeronimoLog.debug(66) | invoke() EPR= null ==> BpelProcess[{http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252]
DEBUG - GeronimoLog.debug(66) | Commiting ODE MEX {MyRoleMex#hqejbhcnphr4523cbmfpjn [Client hqejbhcnphr4523cbmfpjm] calling {http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService.receive(...)}
DEBUG - GeronimoLog.debug(66) | Commiting transaction.
DEBUG - GeronimoLog.debug(66) | >> handleWorkEvent(jobData={type=INVOKE_INTERNAL, mexid=hqejbhcnphr4523cbmfpjn, pid={http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252})
DEBUG - GeronimoLog.debug(66) | InvokeInternal event for mexid hqejbhcnphr4523cbmfpjn
DEBUG - GeronimoLog.debug(66) | GET MEX property org.apache.ode.bpel.myRoleSessionId = null
DEBUG - GeronimoLog.debug(66) | GET MEX property org.apache.ode.bpel.myRoleSessionId = null
DEBUG - GeronimoLog.debug(66) | GET MEX property org.apache.ode.bpel.partnerRoleSessionId = null
ERROR - GeronimoLog.error(108) | Scheduled job failed; jobDetail={type=INVOKE_INTERNAL, mexid=hqejbhcnphr4523cbmfpjn, pid={http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252}
java.lang.IllegalArgumentException: Invalid arguments.
at org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:54)
at org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.findRoute(PartnerLinkMyRoleImpl.java:127)
at org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:198)
at org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
at org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at org.apache.ode.bpel.common.CorrelationKey.hashCode(CorrelationKey.java:156)
at java.util.HashMap.hash(Unknown Source)
at java.util.HashMap.put(Unknown Source)
at java.util.HashSet.add(Unknown Source)
at org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:49)
... 15 more
ERROR - GeronimoLog.error(108) | Error while processing transaction, retrying.
org.apache.ode.bpel.iapi.Scheduler$JobProcessorException: java.lang.IllegalArgumentException: Invalid arguments.
at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:336)
at org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
at org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
at org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.IllegalArgumentException: Invalid arguments.
at org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:54)
at org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.findRoute(PartnerLinkMyRoleImpl.java:127)
at org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:198)
at org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
at org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
... 11 more
Caused by: java.lang.NullPointerException
at org.apache.ode.bpel.common.CorrelationKey.hashCode(CorrelationKey.java:156)
at java.util.HashMap.hash(Unknown Source)
at java.util.HashMap.put(Unknown Source)
at java.util.HashSet.add(Unknown Source)
at org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:49)
... 15 more
-Harshit
Re: Unable to configure Correlation
Posted by Alex Boisvert <bo...@intalio.com>.
Please file a bug and provide a BPEL file that we can use to reproduce the
issue. Also state which version of Ode you are using.
alex
On Mon, Mar 23, 2009 at 7:49 AM, Kapoor, Harshit <HK...@ciber.com> wrote:
> My BPEL process is as follows
> RECEIVE REQUEST
> RESPOND TO RECEIVED MESSAGE
> INVOKE SERVICE A (Correlation ENTITY_ID pattern=out initiate=yes)
> XXX RECEIVE MESSAGE FROM SERVICE B (Correlation ENTITY_ID)
> RESPOND TO SERVICE B
>
> I have used appropriate XPAths in WSDL file thus correlation is being
> initialized properly, and the RECEIVE at XXX waits till a message is sent.
> The problem is that when it receives message following error is generated
> irrespective of the fact that ENTITY_ID matched or not.
>
> DEBUG - GeronimoLog.debug(66) | Received request message for
> ReceiveWorkflowResponse.{
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}receive<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7Dreceive>
> DEBUG - GeronimoLog.debug(66) | Starting transaction.
> DEBUG - GeronimoLog.debug(66) | Routed: svcQname {
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7DReceiveWorkflowResponseService>--> BpelProcess[{
> http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252<http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess%7DAddCustomerProcess-252>
> ]
> DEBUG - GeronimoLog.debug(66) | ODE routed to operation Operation:
> name=receive
> style=REQUEST_RESPONSE,1
> Input: name=null
> Message: name={
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWFInput<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7DReceiveWFInput>
> Part: name=Request
> elementName={
> http://www.ciber.com/GEIP/SOAPOC/CanonicalContent.xsd}ENVELOPE<http://www.ciber.com/GEIP/SOAPOC/CanonicalContent.xsd%7DENVELOPE>
> Output: name=null
> Message: name={
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWFOutput<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7DReceiveWFOutput>
> Part: name=Response
> elementName={
> http://www.ciber.com/GEIP/SOAPOC/CanonicalContent.xsd}ENVELOPE<http://www.ciber.com/GEIP/SOAPOC/CanonicalContent.xsd%7DENVELOPE>from service {
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7DReceiveWorkflowResponseService>
> DEBUG - GeronimoLog.debug(66) | Invoking ODE using MEX
> {MyRoleMex#hqejbhcnphr4523cbmfpjn [Client hqejbhcnphr4523cbmfpjm] calling {
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService.receive(...)<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7DReceiveWorkflowResponseService.receive%28...%29>
> }
> DEBUG - GeronimoLog.debug(66) | Message content: <?xml version="1.0"
> encoding="UTF-8"?>
> <message><Request><ENVELOPE><BODY><CUSTOMER
> ENTITY_ID="40102">...</CUSTOMER></BODY></ENVELOPE></Request></message>
> DEBUG - GeronimoLog.debug(66) | Routed: svcQname {
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7DReceiveWorkflowResponseService>--> BpelProcess[{
> http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252<http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess%7DAddCustomerProcess-252>
> ]
> DEBUG - GeronimoLog.debug(66) | invoke() EPR= null ==> BpelProcess[{
> http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252<http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess%7DAddCustomerProcess-252>
> ]
> DEBUG - GeronimoLog.debug(66) | Commiting ODE MEX
> {MyRoleMex#hqejbhcnphr4523cbmfpjn [Client hqejbhcnphr4523cbmfpjm] calling {
> http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl}ReceiveWorkflowResponseService.receive(...)<http://www.ciber.com/GEIP/SOAPOC/ReceiveWorkflowResponse.wsdl/impl%7DReceiveWorkflowResponseService.receive%28...%29>
> }
> DEBUG - GeronimoLog.debug(66) | Commiting transaction.
> DEBUG - GeronimoLog.debug(66) | >>
> handleWorkEvent(jobData={type=INVOKE_INTERNAL, mexid=hqejbhcnphr4523cbmfpjn,
> pid={
> http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252<http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess%7DAddCustomerProcess-252>
> })
> DEBUG - GeronimoLog.debug(66) | InvokeInternal event for mexid
> hqejbhcnphr4523cbmfpjn
> DEBUG - GeronimoLog.debug(66) | GET MEX property
> org.apache.ode.bpel.myRoleSessionId = null
> DEBUG - GeronimoLog.debug(66) | GET MEX property
> org.apache.ode.bpel.myRoleSessionId = null
> DEBUG - GeronimoLog.debug(66) | GET MEX property
> org.apache.ode.bpel.partnerRoleSessionId = null
> ERROR - GeronimoLog.error(108) | Scheduled job failed;
> jobDetail={type=INVOKE_INTERNAL, mexid=hqejbhcnphr4523cbmfpjn, pid={
> http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess}AddCustomerProcess-252<http://www.ciber.com/GEIP/SOAPOC/AddCustomerProcess%7DAddCustomerProcess-252>
> }
> java.lang.IllegalArgumentException: Invalid arguments.
> at
> org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:54)
> at
> org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.findRoute(PartnerLinkMyRoleImpl.java:127)
> at
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:198)
> at
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
> at
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
> at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
> at java.util.concurrent.FutureTask.run(Unknown Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
> Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
> Source)
> at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.NullPointerException
> at
> org.apache.ode.bpel.common.CorrelationKey.hashCode(CorrelationKey.java:156)
> at java.util.HashMap.hash(Unknown Source)
> at java.util.HashMap.put(Unknown Source)
> at java.util.HashSet.add(Unknown Source)
> at
> org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:49)
> ... 15 more
> ERROR - GeronimoLog.error(108) | Error while processing transaction,
> retrying.
> org.apache.ode.bpel.iapi.Scheduler$JobProcessorException:
> java.lang.IllegalArgumentException: Invalid arguments.
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:336)
> at
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
> at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
> at java.util.concurrent.FutureTask.run(Unknown Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
> Source)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
> Source)
> at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.IllegalArgumentException: Invalid arguments.
> at
> org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:54)
> at
> org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.findRoute(PartnerLinkMyRoleImpl.java:127)
> at
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:198)
> at
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
> ... 11 more
> Caused by: java.lang.NullPointerException
> at
> org.apache.ode.bpel.common.CorrelationKey.hashCode(CorrelationKey.java:156)
> at java.util.HashMap.hash(Unknown Source)
> at java.util.HashMap.put(Unknown Source)
> at java.util.HashSet.add(Unknown Source)
> at
> org.apache.ode.utils.CollectionUtils.makeCollection(CollectionUtils.java:49)
> ... 15 more
>
> -Harshit
>
>