Hello,
I try to get an access to a fault which is thrown by a service and catched by a faulthandler inside a process. I tried to access the variable faultString inside the faulthandler <bpws:copy><bpws:from xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"><![CDATA[$cisLogFault.logFaultException/xsd:faultString]]></bpws:from> <bpws:to xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"><![CDATA[$output.payload/tns:result]]></bpws:to> </bpws:copy> and get this error message: 13:52:44,529 ERROR [ASSIGN] Assignment Fault: {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,lineNo=66,faultExplanation=No results for expression: {OXPath10Expression /xsd:faultString} cisLogFault is specified as: <wsdl:message name="logFaultException"> <wsdl:part name="logFaultException" element="types:LogFault"> </wsdl:part> </wsdl:message> <xsd:element name="LogFault"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:faultCode"/> <xsd:element ref="types:faultString"/> <xsd:element ref="types:faultActor"/> <xsd:element ref="types:faultDetail"/> </xsd:sequence> </xsd:complexType> </xsd:element> The elements faultCode etc. are specified as built-in Strings. log-file with the fault response of the service and the selection failure: DEBUG - GeronimoLog.debug(66) | Found a header in incoming message, checking if there are endpoints there. 14:05:25,123 DEBUG [SessionInHandler] Found a header in incoming message, checking if there are endpoints there. DEBUG - GeronimoLog.debug(66) | Got service response: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"><soapenv:Header><wsa:Action>urn:logRunlogFaultException</wsa:Action><wsa:RelatesTo>uuid:hqejbhcnphr2wmxnnd6h1s</wsa:RelatesTo></soapenv:Header><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring>LogFaultException</faultstring><detail><ns2:LogFault xmlns:ns2="http://cis.log.interface.de.ibm.com/types"><s19:faultCode xmlns:s19="http://cis.de.ibm.com/simpleTypes">LOGEX002</s19:faultCode><s20:faultString xmlns:s20="http://cis.de.ibm.com/simpleTypes">Database for LogService not available.</s20:faultString><s21:faultActor xmlns:s21="http://cis.de.ibm.com/simpleTypes">logRun</s21:faultActor><s22:faultDetail xmlns:s22="http://cis.de.ibm.com/simpleTypes">no stacktrace.</s22:faultDetail></ns2:LogFault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope> 14:05:25,123 DEBUG [ExternalService] Got service response: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"><soapenv:Header><wsa:Action>urn:logRunlogFaultException</wsa:Action><wsa:RelatesTo>uuid:hqejbhcnphr2wmxnnd6h1s</wsa:RelatesTo></soapenv:Header><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring>LogFaultException</faultstring><detail><ns2:LogFault xmlns:ns2="http://cis.log.interface.de.ibm.com/types"><s19:faultCode xmlns:s19="http://cis.de.ibm.com/simpleTypes">LOGEX002</s19:faultCode><s20:faultString xmlns:s20="http://cis.de.ibm.com/simpleTypes">Database for LogService not available.</s20:faultString><s21:faultActor xmlns:s21="http://cis.de.ibm.com/simpleTypes">logRun</s21:faultActor><s22:faultDetail xmlns:s22="http://cis.de.ibm.com/simpleTypes">no stacktrace.</s22:faultDetail></ns2:LogFault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope> DEBUG - GeronimoLog.debug(66) | Reply is a fault, found type: {http://cis.log.interface.de.ibm.com/service}fault 14:05:25,173 DEBUG [ExternalService] Reply is a fault, found type: {http://cis.log.interface.de.ibm.com/service}fault DEBUG - GeronimoLog.trace(54) | Mex[hqejbhcnphr2wmxnnd6h1r].setPortOp(...) 14:05:25,173 DEBUG [MessageExchangeImpl] Mex[hqejbhcnphr2wmxnnd6h1r].setPortOp(...) DEBUG - GeronimoLog.debug(66) | Received response for MEX {PartnerRoleMex#hqejbhcnphr2wmxnnd6h1r [PID {http://com.ibm.de.cis.faulthandler}cisFaultHandlerTest-4] calling null.logRun(...)} 14:05:25,173 DEBUG [ExternalService] Received response for MEX {PartnerRoleMex#hqejbhcnphr2wmxnnd6h1r [PID {http://com.ibm.de.cis.faulthandler}cisFaultHandlerTest-4] calling null.logRun(...)} DEBUG - GeronimoLog.debug(66) | FAULT RESPONSE({http://cis.log.interface.de.ibm.com/service}fault): <?xml version="1.0" encoding="UTF-8"?> <message><logFaultException><detail xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"><LogFault xmlns="http://cis.log.interface.de.ibm.com/types" xmlns:ns2="http://cis.log.interface.de.ibm.com/types"><faultCode xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s19="http://cis.de.ibm.com/simpleTypes">LOGEX002</faultCode><faultString xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s20="http://cis.de.ibm.com/simpleTypes">Database for LogService not available.</faultString><faultActor xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s21="http://cis.de.ibm.com/simpleTypes">logRun</faultActor><faultDetail xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s22="http://cis.de.ibm.com/simpleTypes">no stacktrace.</faultDetail></LogFault></detail></logFaultException></message> 14:05:25,173 DEBUG [ExternalService] FAULT RESPONSE({http://cis.log.interface.de.ibm.com/service}fault): <?xml version="1.0" encoding="UTF-8"?> <message><logFaultException><detail xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"><LogFault xmlns="http://cis.log.interface.de.ibm.com/types" xmlns:ns2="http://cis.log.interface.de.ibm.com/types"><faultCode xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s19="http://cis.de.ibm.com/simpleTypes">LOGEX002</faultCode><faultString xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s20="http://cis.de.ibm.com/simpleTypes">Database for LogService not available.</faultString><faultActor xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s21="http://cis.de.ibm.com/simpleTypes">logRun</faultActor><faultDetail xmlns="http://cis.de.ibm.com/simpleTypes" xmlns:s22="http://cis.de.ibm.com/simpleTypes">no stacktrace.</faultDetail></LogFault></detail></logFaultException></message> DEBUG - GeronimoLog.debug(66) | replyWithFault mex=hqejbhcnphr2wmxnnd6h1r 14:05:25,173 DEBUG [PartnerRoleMessageExchangeImpl] replyWithFault mex=hqejbhcnphr2wmxnnd6h1r DEBUG - GeronimoLog.debug(66) | create work event for mex=hqejbhcnphr2wmxnnd6h1r 14:05:25,183 DEBUG [PartnerRoleMessageExchangeImpl] create work event for mex=hqejbhcnphr2wmxnnd6h1r DEBUG - GeronimoLog.debug(66) | Thread[pool-2-thread-6,5,main]: lock(iid=204, time=1MICROSECONDS) 14:05:25,203 DEBUG [InstanceLockManager] Thread[pool-2-thread-6,5,main]: lock(iid=204, time=1MICROSECONDS) DEBUG - GeronimoLog.debug(66) | Thread[pool-2-thread-6,5,main]: lock(iid=204, time=1MICROSECONDS)-->GRANTED 14:05:25,203 DEBUG [InstanceLockManager] Thread[pool-2-thread-6,5,main]: lock(iid=204, time=1MICROSECONDS)-->GRANTED DEBUG - GeronimoLog.debug(66) | >> handleWorkEvent(jobData={type=INVOKE_RESPONSE, mexid=hqejbhcnphr2wmxnnd6h1r, channel=20, iid=204}) 14:05:25,203 DEBUG [BpelProcess] >> handleWorkEvent(jobData={type=INVOKE_RESPONSE, mexid=hqejbhcnphr2wmxnnd6h1r, channel=20, iid=204}) DEBUG - GeronimoLog.debug(66) | BpelRuntimeContextImpl created for instance 204. INDEXED STATE={{OScope 'Invoke' id=41}::10=[ACTIVE(...)], OSequence#26-main::1=[ACTIVITYGUARD(...)], {OScope 'Invoke' id=41}::10=[SCOPE(...)], OInvoke#42-Invoke::12=[INVOKE(...)], {OScope 'Invoke' id=41}::9=[ACTIVITYGUARD(...)], OInvoke#42-Invoke::11=[ACTIVITYGUARD(...)], {OScope '__PROCESS_SCOPE:cisFaultHandlerTest' id=3}::0=[ACTIVE(...)], OSequence#26-main::2=[SEQUENCE(self=(OSequence#26-main,TerminationChannel#3,ParentScopeChannel#5), [EMAIL PROTECTED], remaining=[{OScope 'Invoke' id=41}, {OAssign : Assign1, joinCondition=null}, OReply#73-replyOutput])], {OScope '__PROCESS_SCOPE:cisFaultHandlerTest' id=3}::0=[SCOPE(...)]} 14:05:25,293 DEBUG [BpelRuntimeContextImpl] BpelRuntimeContextImpl created for instance 204. INDEXED STATE={{OScope 'Invoke' id=41}::10=[ACTIVE(...)], OSequence#26-main::1=[ACTIVITYGUARD(...)], {OScope 'Invoke' id=41}::10=[SCOPE(...)], OInvoke#42-Invoke::12=[INVOKE(...)], {OScope 'Invoke' id=41}::9=[ACTIVITYGUARD(...)], OInvoke#42-Invoke::11=[ACTIVITYGUARD(...)], {OScope '__PROCESS_SCOPE:cisFaultHandlerTest' id=3}::0=[ACTIVE(...)], OSequence#26-main::2=[SEQUENCE(self=(OSequence#26-main,TerminationChannel#3,ParentScopeChannel#5), [EMAIL PROTECTED], remaining=[{OScope 'Invoke' id=41}, {OAssign : Assign1, joinCondition=null}, OReply#73-replyOutput])], {OScope '__PROCESS_SCOPE:cisFaultHandlerTest' id=3}::0=[SCOPE(...)]} DEBUG - GeronimoLog.debug(66) | InvokeResponse event for iid 204 14:05:25,293 DEBUG [BpelProcess] InvokeResponse event for iid 204 DEBUG - GeronimoLog.debug(66) | Invoking message response for mexid hqejbhcnphr2wmxnnd6h1r and channel 20 14:05:25,293 DEBUG [BpelRuntimeContextImpl] Invoking message response for mexid hqejbhcnphr2wmxnnd6h1r and channel 20 DEBUG - GeronimoLog.debug(66) | Triggering response 14:05:25,293 DEBUG [BpelRuntimeContextImpl] Triggering response DEBUG - GeronimoLog.trace(54) | >> createScopeInstance(parentScopeId=264,scope={OCatch faultName={http://cis.log.interface.de.ibm.com/service}fault, faultVariable={Variable __catch#0:Invoke.cisLogFault:OMessageVarType#22}}) 14:05:25,303 DEBUG [BpelProcess] >> createScopeInstance(parentScopeId=264,scope={OCatch faultName={http://cis.log.interface.de.ibm.com/service}fault, faultVariable={Variable __catch#0:Invoke.cisLogFault:OMessageVarType#22}}) DEBUG - GeronimoLog.trace(54) | >> initializeEndpointReferences(parentScopeId=265,partnerLinks=[]) 14:05:25,313 DEBUG [BpelProcess] >> initializeEndpointReferences(parentScopeId=265,partnerLinks=[]) ERROR - GeronimoLog.error(104) | Assignment Fault: {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,lineNo=66,faultExplanation=Unknown variable cisLogFault.logFaultException 14:05:25,333 ERROR [ASSIGN] Assignment Fault: {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,lineNo=66,faultExplanation=Unknown variable cisLogFault.logFaultException What´s the problem? Has anybody an idea? Regards, Jens -- View this message in context: http://www.nabble.com/Access-to-variable-ends-in-selection-failure-tp14839374p14839374.html Sent from the Apache Ode User mailing list archive at Nabble.com.
