我在eWay Web服务上遇到麻烦。
我通过wsimport用https://www.eway.com.au/gateway/rebill/test/manageRebill_test.asmx?WSDL创建了客户端ws
生成文件后,我调用ws方法
ManageRebillTestSoap soap = new ManageRebillTest() .getManageRebillTestSoap();
CustomerDetails details = soap.createRebillCustomer(....);
消息返回错误为:根据数据类型,'eWayCustomerID'元素的值无效。
Soap消息的格式为
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<eWAYHeader xmlns="http://www.eway.com.au/gateway/rebill/manageRebill">
<eWAYCustomerID>string</eWAYCustomerID>
<Username>string</Username>
<Password>string</Password>
</eWAYHeader>
</soap:Header>
<soap:Body>
<CreateRebillCustomer xmlns="http://www.eway.com.au/gateway/rebill/manageRebill">
<customerTitle>string</customerTitle>
<customerFirstName>string</customerFirstName>
<customerLastName>string</customerLastName>
<customerAddress>string</customerAddress>
<customerSuburb>string</customerSuburb>
<customerState>string</customerState>
<customerCompany>string</customerCompany>
<customerPostCode>string</customerPostCode>
<customerCountry>string</customerCountry>
<customerEmail>string</customerEmail>
<customerFax>string</customerFax>
<customerPhone1>string</customerPhone1>
<customerPhone2>string</customerPhone2>
<customerRef>string</customerRef>
<customerJobDesc>string</customerJobDesc>
<customerComments>string</customerComments>
<customerURL>string</customerURL>
</CreateRebillCustomer>
</soap:Body>
</soap:Envelope>
在上述方法中,只需添加
<Soap:Body>
任何人都知道在eWay Web服务上的调用方法时添加eWayHeader或
<soap:Header>
吗?请帮我。 最佳答案
在这里已回答-wsimport doesnt generate code related to soap headers
在wsimport命令中添加选项“ -XadditionalHeaders”解决了该问题。它为可通过/检索标头的方法生成一个额外的参数。
关于java - 如何在eWay Web服务上创建eWayHeader,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14993938/