You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by Bob Brodt <bb...@redhat.com> on 2010/02/25 17:04:35 UTC
Ode Woes
Hi all,
I'm having a devil of a time trying to build & run some simple BPEL processes in tomcat/ODE. When I try to send a valid message to the BPEL service, I'm getting a "selectionFailure" fault back, caused by (I'm assuming) a BPEL execution error. Here's the webserver log file (~/apache-tomcat-5.5.28/logs/catalina.out):
DEBUG - GeronimoLog.debug(66) | The system is checking for the operation using the following WSAAction:
DEBUG - GeronimoLog.debug(66) | Checking for Operation using SOAP message body's first child's local name : inventoryService
DEBUG - GeronimoLog.debug(66) | Found operation org.apache.axis2.description.InOutAxisOperation@11650df
DEBUG - GeronimoLog.debug(66) | Received request message for Quickstart_bpel_blueprint1_inventoryService.{http://manufacturing.org/wsdl/inventory/bp1}inventoryService
DEBUG - GeronimoLog.debug(66) | Starting transaction.
DEBUG - GeronimoLog.debug(66) | Routed: svcQname {http://manufacturing.org/wsdl/inventory/bp1}inventoryService --> [BpelProcess[{http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]]
DEBUG - GeronimoLog.debug(66) | ODE routed to operation Operation: name=inventoryService
style=REQUEST_RESPONSE,1
Input: name=purchaseOrder
Message: name={http://manufacturing.org/wsdl/inventory/bp1}POMessage
Part: name=purchaseOrder
typeName={http://manufacturing.org/xsd/purchase}purchaseOrderType
Output: name=inventoryStatus
Message: name={http://manufacturing.org/wsdl/inventory/bp1}InventoryMessage
Part: name=inventoryPart
typeName={http://manufacturing.org/xsd/inventory}inventoryType
Fault: name=inventoryFaultType
Message: name={http://manufacturing.org/wsdl/inventory/bp1}inventoryFault
Part: name=faultInfo
elementName={http://manufacturing.org/xsd/inventory}inventoryFault from service {http://manufacturing.org/wsdl/inventory/bp1}inventoryService
DEBUG - GeronimoLog.debug(66) | SET MEX property isTwoWay = true
DEBUG - GeronimoLog.debug(66) | Invoking ODE using MEX {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)}
DEBUG - GeronimoLog.debug(66) | Message content: <?xml version="1.0" encoding="UTF-8"?>
<message><purchaseOrder xmlns:pur="http://manufacturing.org/xsd/purchase" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<orderId xmlns="http://manufacturing.org/xsd/purchase">123</orderId>
<customerId xmlns="http://manufacturing.org/xsd/purchase">456</customerId>
<orderDescription xmlns="http://manufacturing.org/xsd/purchase">OrderVal_Any_Description</orderDescription>
<price xmlns="http://manufacturing.org/xsd/purchase"/>
</purchaseOrder></message>
DEBUG - GeronimoLog.debug(66) | invoke() EPR= null ==> BpelProcess[{http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]
DEBUG - GeronimoLog.debug(66) | Commiting ODE MEX {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)}
DEBUG - GeronimoLog.debug(66) | Commiting transaction.
DEBUG - GeronimoLog.debug(66) | handleWorkEvent: InvokeInternal event for mexid hqejbhcnphr52e5fhhmg6q
DEBUG - GeronimoLog.debug(66) | >> handleWorkEvent(jobData={mexid=hqejbhcnphr52e5fhhmg6q, pid={http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15, type=INVOKE_INTERNAL})
DEBUG - GeronimoLog.debug(66) | InvokeInternal event for mexid hqejbhcnphr52e5fhhmg6q
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
DEBUG - GeronimoLog.debug(66) | INPUTMSG: inventorySevicePLink.inventoryService: MSG RCVD keys=[] mySessionId=null partnerSessionId=null
DEBUG - GeronimoLog.debug(66) | INPUTMSG: inventorySevicePLink.inventoryService: routing failed, CREATING NEW INSTANCE
DEBUG - GeronimoLog.debug(66) | BpelRuntimeContextImpl created for instance 1164. INDEXED STATE={}
DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: USING CORRELATOR inventorySevicePLink.inventoryService
DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: CHECKING for NEW INSTANCE match
DEBUG - GeronimoLog.debug(66) | INPUTMSGMATCH: Changing process instance state from ready to active
DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND match for NEW instance mexRef={MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)}
DEBUG - GeronimoLog.debug(66) | ProcessImpl completed with fault '{http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure'
DEBUG - GeronimoLog.debug(66) | Processing an async reply from service {http://manufacturing.org/wsdl/inventory/bp1}inventoryService
DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
DEBUG - GeronimoLog.debug(66) | Handling response for MEX {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)}
DEBUG - GeronimoLog.debug(66) | Starting transaction.
DEBUG - GeronimoLog.debug(66) | Fault response message: {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure
DEBUG - GeronimoLog.debug(66) | Returning fault: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring xmlns:axis2ns2198="http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</faultstring><detail /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
DEBUG - GeronimoLog.debug(66) | Releasing mex hqejbhcnphr52e5fhhmg6q
DEBUG - GeronimoLog.debug(66) | Comitting transaction.
DEBUG - GeronimoLog.debug(66) | Reply for Quickstart_bpel_blueprint1_inventoryService.{http://manufacturing.org/wsdl/inventory/bp1}inventoryService
DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring xmlns:axis2ns2198="http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</faultstring><detail /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
INFO - GeronimoLog.info(79) | Refreshing SYSTEM CRON jobs.
I'm using SOAPUI to send the messages. Here's a sample message which should return a success status:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pur="http://manufacturing.org/xsd/purchase">
<soapenv:Header/>
<soapenv:Body>
<pur:inventoryService>
<purchaseOrder>
<pur:orderId>123</pur:orderId>
<pur:customerId>456</pur:customerId>
<pur:orderDescription>OrderVal_Any_Description</pur:orderDescription>
<pur:price></pur:price>
</purchaseOrder>
</pur:inventoryService>
</soapenv:Body>
</soapenv:Envelope>
Does anyone know why I'm getting this "selectionFailure"?
Thanks!
Bob Brodt
RE: Ode Woes
Posted by Song Thuy Nguyen <pr...@biaqua.de>.
Hello Robert,
I had nightmares about the same failure. Let me guess: you are using eclipse bpel designer right? If yes, try to do this: While creating your BPEL process, save often, espcially after creating invoke calls to a partnerlink and creating variables. SAVE, CLOSE the bpel file and REOPEN it, check back if the method that is called with the partnerlink and it's in and out parameter are in order.
While having the same problem, I tried everything to figure out the problem: writing the bpel file manually (hell of a task, too much for my brain) didn't work out, comparing a working example with a failed one (same invoke, similiar structure) : I didn't find any noticeable difference. As last I tried to document each step I went through to create the bpel file and tried different workflows and I finally found the workaround as descriped above.
I suppose that there are inconsistencies between the bpel source code (aka bpel file) and the model representation in the mainmemory. If you keep working on the bpel file and just save without close-and-reopen the inconsistency grows and somehow three will be an error-prone write action on the bpel file, creating the failure.
When solving this problem I was just happy to get the bpel-process working and since I've lost about 2 weeks on this error didn't have time to care anymore about what bpel code really created the selectionError. I just went on with the development...
I hope this workaround will help you solving the problem and that you have more time to find out what really cause this.
Good luck to you!
Song Thuy Nguyen
> -----Original Message-----
> From: Bob Brodt [mailto:bbrodt@redhat.com]
> Sent: Thursday, February 25, 2010 7:44 PM
> To: dev@ode.apache.org; antoine@toulme.name
> Subject: Re: Ode Woes
>
> Thank you for the reply Antoine. I have been looking through the ODE
> mail archives and finding similar posts. I think it has to do with a
> variable initialization problem...
>
> _______________________________________
> Robert ("Bob") Brodt
> Senior Software Engineer, JBoss Riftsaw
> Home: (719) 481-5628
> Cell: (719) 440-9825
> JBoss by Red Hat
>
> ----- Original Message -----
> From: "Antoine Toulme" <an...@gmail.com>
> To: dev@ode.apache.org
> Sent: Thursday, February 25, 2010 11:03:10 AM GMT -07:00 US/Canada
> Mountain
> Subject: Re: Ode Woes
>
> That's because one of your bpel copy is not valid. It's difficult to
> say
> without seeing the bpel:copy in question.
>
> Thanks,
>
> Antoine
>
> On Thu, Feb 25, 2010 at 08:04, Bob Brodt <bb...@redhat.com> wrote:
>
> > Hi all,
> >
> > I'm having a devil of a time trying to build & run some simple BPEL
> > processes in tomcat/ODE. When I try to send a valid message to the
> BPEL
> > service, I'm getting a "selectionFailure" fault back, caused by (I'm
> > assuming) a BPEL execution error. Here's the webserver log file
> > (~/apache-tomcat-5.5.28/logs/catalina.out):
> >
> > DEBUG - GeronimoLog.debug(66) | The system is checking for the
> operation
> > using the following WSAAction:
> > DEBUG - GeronimoLog.debug(66) | Checking for Operation using SOAP
> message
> > body's first child's local name : inventoryService
> > DEBUG - GeronimoLog.debug(66) | Found operation
> > org.apache.axis2.description.InOutAxisOperation@11650df
> > DEBUG - GeronimoLog.debug(66) | Received request message for
> > Quickstart_bpel_blueprint1_inventoryService.{
> > http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> > DEBUG - GeronimoLog.debug(66) | Starting transaction.
> > DEBUG - GeronimoLog.debug(66) | Routed: svcQname {
> > http://manufacturing.org/wsdl/inventory/bp1}inventoryService -->
> > [BpelProcess[{
> > http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]]
> > DEBUG - GeronimoLog.debug(66) | ODE routed to operation Operation:
> > name=inventoryService
> > style=REQUEST_RESPONSE,1
> > Input: name=purchaseOrder
> > Message: name={http://manufacturing.org/wsdl/inventory/bp1}POMessage
> > Part: name=purchaseOrder
> > typeName={http://manufacturing.org/xsd/purchase}purchaseOrderType
> > Output: name=inventoryStatus
> > Message: name={
> > http://manufacturing.org/wsdl/inventory/bp1}InventoryMessage
> > Part: name=inventoryPart
> > typeName={http://manufacturing.org/xsd/inventory}inventoryType
> > Fault: name=inventoryFaultType
> > Message:
> name={http://manufacturing.org/wsdl/inventory/bp1}inventoryFault
> > Part: name=faultInfo
> > elementName={http://manufacturing.org/xsd/inventory}inventoryFault
> from
> > service {http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> > DEBUG - GeronimoLog.debug(66) | SET MEX property isTwoWay = true
> > DEBUG - GeronimoLog.debug(66) | Invoking ODE using MEX
> > {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p]
> calling {
> >
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
> ervice(...)
> > }
> > DEBUG - GeronimoLog.debug(66) | Message content: <?xml version="1.0"
> > encoding="UTF-8"?>
> > <message><purchaseOrder
> xmlns:pur="http://manufacturing.org/xsd/purchase"
> > xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> > <orderId xmlns="http://manufacturing.org/xsd/purchase
> > ">123</orderId>
> > <customerId xmlns="http://manufacturing.org/xsd/purchase
> > ">456</customerId>
> > <orderDescription
> xmlns="http://manufacturing.org/xsd/purchase
> > ">OrderVal_Any_Description</orderDescription>
> > <price xmlns="http://manufacturing.org/xsd/purchase"/>
> > </purchaseOrder></message>
> > DEBUG - GeronimoLog.debug(66) | invoke() EPR= null ==> BpelProcess[{
> > http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]
> > DEBUG - GeronimoLog.debug(66) | Commiting ODE MEX
> > {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p]
> calling {
> >
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
> ervice(...)
> > }
> > DEBUG - GeronimoLog.debug(66) | Commiting transaction.
> > DEBUG - GeronimoLog.debug(66) | handleWorkEvent: InvokeInternal event
> for
> > mexid hqejbhcnphr52e5fhhmg6q
> > DEBUG - GeronimoLog.debug(66) | >>
> > handleWorkEvent(jobData={mexid=hqejbhcnphr52e5fhhmg6q, pid={
> > http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15,
> > type=INVOKE_INTERNAL})
> > DEBUG - GeronimoLog.debug(66) | InvokeInternal event for mexid
> > hqejbhcnphr52e5fhhmg6q
> > 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
> > DEBUG - GeronimoLog.debug(66) | INPUTMSG:
> > inventorySevicePLink.inventoryService: MSG RCVD keys=[]
> mySessionId=null
> > partnerSessionId=null
> > DEBUG - GeronimoLog.debug(66) | INPUTMSG:
> > inventorySevicePLink.inventoryService: routing failed, CREATING NEW
> INSTANCE
> > DEBUG - GeronimoLog.debug(66) | BpelRuntimeContextImpl created for
> instance
> > 1164. INDEXED STATE={}
> > DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: USING
> > CORRELATOR inventorySevicePLink.inventoryService
> > DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9:
> CHECKING for
> > NEW INSTANCE match
> > DEBUG - GeronimoLog.debug(66) | INPUTMSGMATCH: Changing process
> instance
> > state from ready to active
> > DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND
> match
> > for NEW instance mexRef={MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client
> > hqejbhcnphr52e5fhhmg6p] calling {
> >
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
> ervice(...)
> > }
> > DEBUG - GeronimoLog.debug(66) | ProcessImpl completed with fault '{
> > http://docs.oasis-
> open.org/wsbpel/2.0/process/executable}selectionFailure'
> > DEBUG - GeronimoLog.debug(66) | Processing an async reply from
> service {
> > http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> > DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
> > DEBUG - GeronimoLog.debug(66) | Handling response for MEX
> > {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p]
> calling {
> >
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryS
> ervice(...)
> > }
> > DEBUG - GeronimoLog.debug(66) | Starting transaction.
> > DEBUG - GeronimoLog.debug(66) | Fault response message: {
> > http://docs.oasis-
> open.org/wsbpel/2.0/process/executable}selectionFailure
> > DEBUG - GeronimoLog.debug(66) | Returning fault: <?xml version='1.0'
> > encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> >
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault
> ><faultcode>soapenv:Server</faultcode><faultstring
> > xmlns:axis2ns2198="
> > http://docs.oasis-
> open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</f
> aultstring><detail
> > /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> > DEBUG - GeronimoLog.debug(66) | Releasing mex hqejbhcnphr52e5fhhmg6q
> > DEBUG - GeronimoLog.debug(66) | Comitting transaction.
> > DEBUG - GeronimoLog.debug(66) | Reply for
> > Quickstart_bpel_blueprint1_inventoryService.{
> > http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> > DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
> > encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> >
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault
> ><faultcode>soapenv:Server</faultcode><faultstring
> > xmlns:axis2ns2198="
> > http://docs.oasis-
> open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</f
> aultstring><detail
> > /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> > DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
> > INFO - GeronimoLog.info(79) | Refreshing SYSTEM CRON jobs.
> >
> > I'm using SOAPUI to send the messages. Here's a sample message which
> should
> > return a success status:
> >
> > <soapenv:Envelope
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> > xmlns:pur="http://manufacturing.org/xsd/purchase">
> > <soapenv:Header/>
> > <soapenv:Body>
> > <pur:inventoryService>
> > <purchaseOrder>
> > <pur:orderId>123</pur:orderId>
> > <pur:customerId>456</pur:customerId>
> >
> >
> <pur:orderDescription>OrderVal_Any_Description</pur:orderDescription>
> > <pur:price></pur:price>
> > </purchaseOrder>
> > </pur:inventoryService>
> > </soapenv:Body>
> > </soapenv:Envelope>
> >
> > Does anyone know why I'm getting this "selectionFailure"?
> > Thanks!
> >
> >
> > Bob Brodt
> >
Re: Ode Woes
Posted by Bob Brodt <bb...@redhat.com>.
Thank you for the reply Antoine. I have been looking through the ODE mail archives and finding similar posts. I think it has to do with a variable initialization problem...
_______________________________________
Robert ("Bob") Brodt
Senior Software Engineer, JBoss Riftsaw
Home: (719) 481-5628
Cell: (719) 440-9825
JBoss by Red Hat
----- Original Message -----
From: "Antoine Toulme" <an...@gmail.com>
To: dev@ode.apache.org
Sent: Thursday, February 25, 2010 11:03:10 AM GMT -07:00 US/Canada Mountain
Subject: Re: Ode Woes
That's because one of your bpel copy is not valid. It's difficult to say
without seeing the bpel:copy in question.
Thanks,
Antoine
On Thu, Feb 25, 2010 at 08:04, Bob Brodt <bb...@redhat.com> wrote:
> Hi all,
>
> I'm having a devil of a time trying to build & run some simple BPEL
> processes in tomcat/ODE. When I try to send a valid message to the BPEL
> service, I'm getting a "selectionFailure" fault back, caused by (I'm
> assuming) a BPEL execution error. Here's the webserver log file
> (~/apache-tomcat-5.5.28/logs/catalina.out):
>
> DEBUG - GeronimoLog.debug(66) | The system is checking for the operation
> using the following WSAAction:
> DEBUG - GeronimoLog.debug(66) | Checking for Operation using SOAP message
> body's first child's local name : inventoryService
> DEBUG - GeronimoLog.debug(66) | Found operation
> org.apache.axis2.description.InOutAxisOperation@11650df
> DEBUG - GeronimoLog.debug(66) | Received request message for
> Quickstart_bpel_blueprint1_inventoryService.{
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | Starting transaction.
> DEBUG - GeronimoLog.debug(66) | Routed: svcQname {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService -->
> [BpelProcess[{
> http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]]
> DEBUG - GeronimoLog.debug(66) | ODE routed to operation Operation:
> name=inventoryService
> style=REQUEST_RESPONSE,1
> Input: name=purchaseOrder
> Message: name={http://manufacturing.org/wsdl/inventory/bp1}POMessage
> Part: name=purchaseOrder
> typeName={http://manufacturing.org/xsd/purchase}purchaseOrderType
> Output: name=inventoryStatus
> Message: name={
> http://manufacturing.org/wsdl/inventory/bp1}InventoryMessage
> Part: name=inventoryPart
> typeName={http://manufacturing.org/xsd/inventory}inventoryType
> Fault: name=inventoryFaultType
> Message: name={http://manufacturing.org/wsdl/inventory/bp1}inventoryFault
> Part: name=faultInfo
> elementName={http://manufacturing.org/xsd/inventory}inventoryFault from
> service {http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | SET MEX property isTwoWay = true
> DEBUG - GeronimoLog.debug(66) | Invoking ODE using MEX
> {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | Message content: <?xml version="1.0"
> encoding="UTF-8"?>
> <message><purchaseOrder xmlns:pur="http://manufacturing.org/xsd/purchase"
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> <orderId xmlns="http://manufacturing.org/xsd/purchase
> ">123</orderId>
> <customerId xmlns="http://manufacturing.org/xsd/purchase
> ">456</customerId>
> <orderDescription xmlns="http://manufacturing.org/xsd/purchase
> ">OrderVal_Any_Description</orderDescription>
> <price xmlns="http://manufacturing.org/xsd/purchase"/>
> </purchaseOrder></message>
> DEBUG - GeronimoLog.debug(66) | invoke() EPR= null ==> BpelProcess[{
> http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]
> DEBUG - GeronimoLog.debug(66) | Commiting ODE MEX
> {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | Commiting transaction.
> DEBUG - GeronimoLog.debug(66) | handleWorkEvent: InvokeInternal event for
> mexid hqejbhcnphr52e5fhhmg6q
> DEBUG - GeronimoLog.debug(66) | >>
> handleWorkEvent(jobData={mexid=hqejbhcnphr52e5fhhmg6q, pid={
> http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15,
> type=INVOKE_INTERNAL})
> DEBUG - GeronimoLog.debug(66) | InvokeInternal event for mexid
> hqejbhcnphr52e5fhhmg6q
> 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
> DEBUG - GeronimoLog.debug(66) | INPUTMSG:
> inventorySevicePLink.inventoryService: MSG RCVD keys=[] mySessionId=null
> partnerSessionId=null
> DEBUG - GeronimoLog.debug(66) | INPUTMSG:
> inventorySevicePLink.inventoryService: routing failed, CREATING NEW INSTANCE
> DEBUG - GeronimoLog.debug(66) | BpelRuntimeContextImpl created for instance
> 1164. INDEXED STATE={}
> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: USING
> CORRELATOR inventorySevicePLink.inventoryService
> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: CHECKING for
> NEW INSTANCE match
> DEBUG - GeronimoLog.debug(66) | INPUTMSGMATCH: Changing process instance
> state from ready to active
> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND match
> for NEW instance mexRef={MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client
> hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | ProcessImpl completed with fault '{
> http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure'
> DEBUG - GeronimoLog.debug(66) | Processing an async reply from service {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
> DEBUG - GeronimoLog.debug(66) | Handling response for MEX
> {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | Starting transaction.
> DEBUG - GeronimoLog.debug(66) | Fault response message: {
> http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure
> DEBUG - GeronimoLog.debug(66) | Returning fault: <?xml version='1.0'
> encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring
> xmlns:axis2ns2198="
> http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</faultstring><detail
> /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> DEBUG - GeronimoLog.debug(66) | Releasing mex hqejbhcnphr52e5fhhmg6q
> DEBUG - GeronimoLog.debug(66) | Comitting transaction.
> DEBUG - GeronimoLog.debug(66) | Reply for
> Quickstart_bpel_blueprint1_inventoryService.{
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
> encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring
> xmlns:axis2ns2198="
> http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</faultstring><detail
> /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
> INFO - GeronimoLog.info(79) | Refreshing SYSTEM CRON jobs.
>
> I'm using SOAPUI to send the messages. Here's a sample message which should
> return a success status:
>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:pur="http://manufacturing.org/xsd/purchase">
> <soapenv:Header/>
> <soapenv:Body>
> <pur:inventoryService>
> <purchaseOrder>
> <pur:orderId>123</pur:orderId>
> <pur:customerId>456</pur:customerId>
>
> <pur:orderDescription>OrderVal_Any_Description</pur:orderDescription>
> <pur:price></pur:price>
> </purchaseOrder>
> </pur:inventoryService>
> </soapenv:Body>
> </soapenv:Envelope>
>
> Does anyone know why I'm getting this "selectionFailure"?
> Thanks!
>
>
> Bob Brodt
>
Re: Ode Woes
Posted by Antoine Toulme <an...@gmail.com>.
That's because one of your bpel copy is not valid. It's difficult to say
without seeing the bpel:copy in question.
Thanks,
Antoine
On Thu, Feb 25, 2010 at 08:04, Bob Brodt <bb...@redhat.com> wrote:
> Hi all,
>
> I'm having a devil of a time trying to build & run some simple BPEL
> processes in tomcat/ODE. When I try to send a valid message to the BPEL
> service, I'm getting a "selectionFailure" fault back, caused by (I'm
> assuming) a BPEL execution error. Here's the webserver log file
> (~/apache-tomcat-5.5.28/logs/catalina.out):
>
> DEBUG - GeronimoLog.debug(66) | The system is checking for the operation
> using the following WSAAction:
> DEBUG - GeronimoLog.debug(66) | Checking for Operation using SOAP message
> body's first child's local name : inventoryService
> DEBUG - GeronimoLog.debug(66) | Found operation
> org.apache.axis2.description.InOutAxisOperation@11650df
> DEBUG - GeronimoLog.debug(66) | Received request message for
> Quickstart_bpel_blueprint1_inventoryService.{
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | Starting transaction.
> DEBUG - GeronimoLog.debug(66) | Routed: svcQname {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService -->
> [BpelProcess[{
> http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]]
> DEBUG - GeronimoLog.debug(66) | ODE routed to operation Operation:
> name=inventoryService
> style=REQUEST_RESPONSE,1
> Input: name=purchaseOrder
> Message: name={http://manufacturing.org/wsdl/inventory/bp1}POMessage
> Part: name=purchaseOrder
> typeName={http://manufacturing.org/xsd/purchase}purchaseOrderType
> Output: name=inventoryStatus
> Message: name={
> http://manufacturing.org/wsdl/inventory/bp1}InventoryMessage
> Part: name=inventoryPart
> typeName={http://manufacturing.org/xsd/inventory}inventoryType
> Fault: name=inventoryFaultType
> Message: name={http://manufacturing.org/wsdl/inventory/bp1}inventoryFault
> Part: name=faultInfo
> elementName={http://manufacturing.org/xsd/inventory}inventoryFault from
> service {http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | SET MEX property isTwoWay = true
> DEBUG - GeronimoLog.debug(66) | Invoking ODE using MEX
> {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | Message content: <?xml version="1.0"
> encoding="UTF-8"?>
> <message><purchaseOrder xmlns:pur="http://manufacturing.org/xsd/purchase"
> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
> <orderId xmlns="http://manufacturing.org/xsd/purchase
> ">123</orderId>
> <customerId xmlns="http://manufacturing.org/xsd/purchase
> ">456</customerId>
> <orderDescription xmlns="http://manufacturing.org/xsd/purchase
> ">OrderVal_Any_Description</orderDescription>
> <price xmlns="http://manufacturing.org/xsd/purchase"/>
> </purchaseOrder></message>
> DEBUG - GeronimoLog.debug(66) | invoke() EPR= null ==> BpelProcess[{
> http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15]
> DEBUG - GeronimoLog.debug(66) | Commiting ODE MEX
> {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | Commiting transaction.
> DEBUG - GeronimoLog.debug(66) | handleWorkEvent: InvokeInternal event for
> mexid hqejbhcnphr52e5fhhmg6q
> DEBUG - GeronimoLog.debug(66) | >>
> handleWorkEvent(jobData={mexid=hqejbhcnphr52e5fhhmg6q, pid={
> http://manufacturing.org/wsdl/inventory/bp1}InventoryService-15,
> type=INVOKE_INTERNAL})
> DEBUG - GeronimoLog.debug(66) | InvokeInternal event for mexid
> hqejbhcnphr52e5fhhmg6q
> 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
> DEBUG - GeronimoLog.debug(66) | INPUTMSG:
> inventorySevicePLink.inventoryService: MSG RCVD keys=[] mySessionId=null
> partnerSessionId=null
> DEBUG - GeronimoLog.debug(66) | INPUTMSG:
> inventorySevicePLink.inventoryService: routing failed, CREATING NEW INSTANCE
> DEBUG - GeronimoLog.debug(66) | BpelRuntimeContextImpl created for instance
> 1164. INDEXED STATE={}
> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: USING
> CORRELATOR inventorySevicePLink.inventoryService
> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: CHECKING for
> NEW INSTANCE match
> DEBUG - GeronimoLog.debug(66) | INPUTMSGMATCH: Changing process instance
> state from ready to active
> DEBUG - GeronimoLog.debug(66) | SELECT: PickResponseChannel#9: FOUND match
> for NEW instance mexRef={MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client
> hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | ProcessImpl completed with fault '{
> http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure'
> DEBUG - GeronimoLog.debug(66) | Processing an async reply from service {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
> DEBUG - GeronimoLog.debug(66) | Handling response for MEX
> {MyRoleMex#hqejbhcnphr52e5fhhmg6q [Client hqejbhcnphr52e5fhhmg6p] calling {
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService.inventoryService(...)
> }
> DEBUG - GeronimoLog.debug(66) | Starting transaction.
> DEBUG - GeronimoLog.debug(66) | Fault response message: {
> http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure
> DEBUG - GeronimoLog.debug(66) | Returning fault: <?xml version='1.0'
> encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring
> xmlns:axis2ns2198="
> http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</faultstring><detail
> /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> DEBUG - GeronimoLog.debug(66) | Releasing mex hqejbhcnphr52e5fhhmg6q
> DEBUG - GeronimoLog.debug(66) | Comitting transaction.
> DEBUG - GeronimoLog.debug(66) | Reply for
> Quickstart_bpel_blueprint1_inventoryService.{
> http://manufacturing.org/wsdl/inventory/bp1}inventoryService
> DEBUG - GeronimoLog.debug(66) | Reply message <?xml version='1.0'
> encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring
> xmlns:axis2ns2198="
> http://docs.oasis-open.org/wsbpel/2.0/process/executable">axis2ns2198:selectionFailure</faultstring><detail
> /></soapenv:Fault></soapenv:Body></soapenv:Envelope>
> DEBUG - GeronimoLog.debug(66) | Received myrole mex response callback
> INFO - GeronimoLog.info(79) | Refreshing SYSTEM CRON jobs.
>
> I'm using SOAPUI to send the messages. Here's a sample message which should
> return a success status:
>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:pur="http://manufacturing.org/xsd/purchase">
> <soapenv:Header/>
> <soapenv:Body>
> <pur:inventoryService>
> <purchaseOrder>
> <pur:orderId>123</pur:orderId>
> <pur:customerId>456</pur:customerId>
>
> <pur:orderDescription>OrderVal_Any_Description</pur:orderDescription>
> <pur:price></pur:price>
> </purchaseOrder>
> </pur:inventoryService>
> </soapenv:Body>
> </soapenv:Envelope>
>
> Does anyone know why I'm getting this "selectionFailure"?
> Thanks!
>
>
> Bob Brodt
>