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 <[email protected]> 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.inoutaxisoperat...@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 >
