0

eWayWebサービスに問題があります。https://www.eway.com.au/gateway/rebill/test/manageRebill_test.asmx?WSDL
を使用 してwsimportでクライアント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> eWayHeaderを追加することを知っている人を追加するか<soap:Header>、eWay Webサービスでメソッドを呼び出すときに追加しますか?私を助けてください。

4

1 に答える 1

1

これはここで回答されています-wsimportはsoapヘッダーに関連するコードを生成しません

オプション「-XadditionalHeaders」をwsimportコマンドに追加すると、問題が解決しました。ヘッダーを渡したり取得したりできるメソッドの追加の引数を生成します。
于 2013-02-25T00:16:21.663 に答える