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

Reply via email to