In "Case 2", how are you setting the headers:
<masterAccountID>11111111</masterAccountID>
<license>999999999</license>
<onBehalfOfUsername />
<onBehalfOfPassword />
Without the -exsh true, they wouldn't be method parameters so you are
setting them some other way. SAAJ handler? Through the request
context? etc... I would need to see that code.
Dan
On Jul 3, 2008, at 10:22 AM, nmt999 wrote:
In my client developement using cxf to talk to yahoo searchmarketing
services
(http://searchmarketing.yahoo.com/developer/docs/V4/wsdl/V4/AccountService.wsdl
),
I have two different implementations. I have them below. Case 1
works but
not Case 2. How can I make the Case 2 work.
Does wsdl2java command when used with and without -exsh option make a
difference for the client when making requests to a webservice. Does
the two
soap requests sent any different?
Case 1:
=====
wsdl2java used witn -exsh true option
wsdl2java command used: wsdl2java -client -exsh true -p
com.test.accountservice AccountService.wsdl
Following request was generated and sent successfully:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<ns2:onBehalfOfUsername
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/07/secext"
xmlns:ns2="http://marketing.ews.yahooapis.com/V4" xsi:nil="true" />
<ns2:onBehalfOfPassword
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/07/secext"
xmlns:ns2="http://marketing.ews.yahooapis.com/V4" xsi:nil="true" />
<ns2:masterAccountID
xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/07/secext"
xmlns:ns2="http://marketing.ews.yahooapis.com/V4">11111111</
ns2:masterAccountID>
<ns2:license xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/07/secext"
xmlns:ns2="http://marketing.ews.yahooapis.com/V4">9999999</
ns2:license>
<ns3:Security xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/07/
secext"
xmlns:ns2="http://marketing.ews.yahooapis.com/V4">
<UsernameToken>
<Username>username</Username>
<Password>password</Password>
</UsernameToken>
</ns3:Security>
</soap:Header>
<soap:Body>
<ns2:getAccountStatus xmlns:ns2="http://marketing.ews.yahooapis.com/V4
"
xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/07/secext">
<ns2:accountID>222222222</ns2:accountID>
</ns2:getAccountStatus>
</soap:Body>
</soap:Envelope>
Response received successfully
Case 2:
=====
wsdl2java used without the exsh option
wsdl2java command used: wsdl2java -client -p com.test.accountservice
AccountService.wsdl
Following request was generated and sent successfully:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<wsse:Security
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
"
soap:mustUnderstand="1">
<wsse:UsernameToken
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
"
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
"
wsu:Id="UsernameToken-24164377">
<wsse:Username
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
">username</wsse:Username>
<wsse:Password
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd
"
Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText
">password</wsse:Password>
</wsse:UsernameToken></wsse:Security>
<masterAccountID>11111111</masterAccountID>
<license>999999999</license>
<onBehalfOfUsername />
<onBehalfOfPassword />
</soap:Header>
<soap:Body>
<ns2:getAccountStatus xmlns:ns2="http://marketing.ews.yahooapis.com/V4
"
xmlns:ns3="http://schemas.xmlsoap.org/ws/2002/07/secext">
<ns2:accountID>222222222</ns2:accountID>
</ns2:getAccountStatus>
</soap:Body>
</soap:Envelope>
Response received has soap fault as below:
<soap:Fault><faultcode>soap:Server</faultcode>
<faultstring>An internal error has occurred.</faultstring>
<detail>
<yns:ApiFault
xmlns:yns="http://marketing.ews.yahooapis.com/V4">
<yns:code
xmlns:yns="http://marketing.ews.yahooapis.com/V4">E1002</yns:code>
<yns:message
xmlns:yns="http://marketing.ews.yahooapis.com/V4">An
internal error has occurred.</yns:message>
</yns:ApiFault>
</detail>
</soap:Fault>
Regards
nmt
--
View this message in context:
http://www.nabble.com/Does-wsdl2java-command-when-used-with-and-without--exsh-option-make-a-difference-for-the-client-when-making-requests-to-a-webservice-tp18260156p18260156.html
Sent from the cxf-user mailing list archive at Nabble.com.
---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog