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
>
>