ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Boisvert" <boisv...@intalio.com>
Subject Re: error when returning from invoke
Date Tue, 29 Apr 2008 00:49:05 GMT
Your SOAP response body currently looks like,

<verifyDebitCardResponse xmlns="
http://bankA.bank.printAndMail.scenario.llama.uci.edu<http://banka.bank.printandmail.scenario.llama.uci.edu/>
">
  <verifyDebitCardReturn xsi:type="xsd:boolean">true</verifyDebitCardReturn>
</verifyDebitCardResponse>

whereas it should look like this,

<verifyDebitCardResponse xmlns="
http://bankA.bank.printAndMail.scenario.llama.uci.edu<http://banka.bank.printandmail.scenario.llama.uci.edu/>
">
  <verifyDebitCardReturn xsi:type="xsd:boolean" *xmlns=""*
>true</verifyDebitCardReturn>
</verifyDebitCardResponse>

The WS-I BasicProfile states that part accessors should have no
namespace (R2735
in
http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#Part_Accessors
)

alex

On Mon, Apr 28, 2008 at 5:27 PM, Mark Panahi <mpanahi@gmail.com> wrote:

> Hello, I'm getting an error "Unable to process response: SOAP body does
> not
> contain required part" when returning from an invoke. However, this
> doesn't
> make sense since the message seems to have that required part.
>
> Any ideas?
>
> Thanks,
>
> Mark
>
> DEBUG - GeronimoLog.debug(66) | Sending a message containing wsa endpoints
> in headers for session passing.
> DEBUG - GeronimoLog.debug(66) | <?xml version='1.0'
> encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><addr:To
> xmlns:addr="http://www.w3.org/2005/08/addressing">
> http://localhost:8081/services/BankA</addr:To><addr:Action xmlns:addr="
> http://www.w3.org/2005/08/addressing"></addr:Action><addr:ReplyTo
> xmlns:addr="http://www.w3.org/2005/08/addressing"><addr:Address>
> http://www.w3.org/2005/08/addressing/anonymous
> </addr:Address></addr:ReplyTo><addr:MessageID
> xmlns:addr="http://www.w3.org/2005/08/addressing
> ">uuid:hqejbhcnphr38e8ccn0am7</addr:MessageID></soapenv:Header><soapenv:Body><axis2ns1:verifyDebitCard
> xmlns:axis2ns1="http://bankA.bank.printAndMail.scenario.llama.uci.edu
> "><in0
> xmlns:cle="http://j2ee.netbeans.org/wsdl/ClearingHouse" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="
> http://www.w3.org/2001/XMLSchema">
>        <bankName>bankName</bankName>
>        <accountHolderName>?string?</accountHolderName>
>        <accountAddress>accountHolderName</accountAddress>
>        <accountCity>accountCity</accountCity>
>        <accountState>accountState</accountState>
>        <accountZip>accountZip</accountZip>
>        <accountCountry>accountCountry</accountCountry>
>        <accountNumber>accountNumber</accountNumber>
>        <expiryDate>expiryDate</expiryDate>
>      </in0><in1 xmlns:cle="http://j2ee.netbeans.org/wsdl/ClearingHouse"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="
> http://www.w3.org/2001/XMLSchema
> ">1.1</in1></axis2ns1:verifyDebitCard></soapenv:Body></soapenv:Envelope>
> DEBUG - GeronimoLog.debug(66) | Service response:
> <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="
> http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="
> http://www.w3.org/2001/XMLSchema"><soapenv:Body><verifyDebitCardResponse
> xmlns="http://bankA.bank.printAndMail.scenario.llama.uci.edu"><*
> verifyDebitCardReturn*
> xsi:type="xsd:boolean">true</*verifyDebitCardReturn*
> ></verifyDebitCardResponse></soapenv:Body></soapenv:Envelope>
> DEBUG - GeronimoLog.debug(66) | Received response for MEX
> {PartnerRoleMex#hqejbhcnphr38e8ccn0am6 [PID {
> http://enterprise.netbeans.org/bpel/ClearPaymentProcess}ClearPayment-1<http://enterprise.netbeans.org/bpel/ClearPaymentProcess%7DClearPayment-1>
> ]
> calling null.verifyDebitCard(...)}
> *ERROR - GeronimoLog.error(108) | Unable to process response: SOAP body
> does
> not contain required part: verifyDebitCardReturn.
> org.apache.ode.axis2.OdeFault: SOAP body does not contain required part:
> verifyDebitCardReturn.*
>    at
>
> org.apache.ode.axis2.util.SoapMessageConverter.extractSoapBodyParts(SoapMessageConverter.java:370)
>    at
>
> org.apache.ode.axis2.util.SoapMessageConverter.parseSoapResponse(SoapMessageConverter.java:328)
>    at
>
> org.apache.ode.axis2.SoapExternalService$4.call(SoapExternalService.java:348)
>    at
>
> org.apache.ode.axis2.SoapExternalService$4.call(SoapExternalService.java:314)
>    at
>
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
>    at
>
> org.apache.ode.scheduler.simple.SimpleScheduler$1.call(SimpleScheduler.java:155)
>    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
>    at java.util.concurrent.FutureTask.run(FutureTask.java:123)
>    at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
>    at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
>    at java.lang.Thread.run(Thread.java:595)
> Caused by: java.lang.IllegalArgumentException: SOAP body does not contain
> required part: verifyDebitCardReturn.
>    at
>
> org.apache.ode.utils.wsdl.Messages.msgSOAPBodyDoesNotContainRequiredPart(Messages.java:140)
>    ... 11 more
>
> Here's some of the relevant wsdl:
>
>    <wsdl:message name="verifyDebitCardResponse">
>        <wsdl:part name="verifyDebitCardReturn" type="xsd:boolean" />
>    </wsdl:message>
>
>        <wsdl:operation name="verifyDebitCard" parameterOrder="in0 in1">
>            <wsdl:input message="impl:verifyDebitCardRequest"
> name="verifyDebitCardRequest" />
>            <wsdl:output message="impl:verifyDebitCardResponse"
> name="verifyDebitCardResponse" />
>        </wsdl:operation>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message