【问题标题】:How to Consume Webservice SOAP Request and response contains header and body in java如何使用 Webservice SOAP 请求和响应在 java 中包含标头和正文
【发布时间】:2011-06-23 08:06:04
【问题描述】:

我有银行的 WSDL 文件,我们必须使用它的服务。使用 Apache axis 1.4 - WSDL2JAVA,我已经生成了所有的代理文件。

我必须调用 4 种方法。每个方法的 SOAP 1.1 请求和响应都包含一个 Header 和 body。在请求中,header 用于设置登录数据,body 包含一个 object params 来实际传递我的方法getCat 的参数。在响应中,我有header_out,它向我传递了连接状态、错误代码(用于身份验证)和正文包含类似

的内容
 <GetCatResponse xmlns="WebServices">
  <GetCatResult>
    <xsd:schema>schema</xsd:schema>xml</GetCatResult>
</GetCatResponse>

谁能告诉我如何编写客户端代码来发送请求并获得响应。

肥皂如下所示。

 SOAPAction: "WebServices/GetCat"
  <soap:Envelope ....>
   <soap:Header>
    <ws_Header xmlns="WebServices">
     <sWebUser>string</sWebUser>
      <sWebPassword>string</sWebPassword>
      <sCompanyID>string</sCompanyID>
     </ws_Header>
    </soap:Header>
   <soap:Body>
     <GetCat xmlns="WebServices">
      <ObjParms>
       <sCountry>string</sCountry>
       <sCatType>string</sCatType>
       </ObjParms>
     </GetCat>
    </soap:Body>
  </soap:Envelope>

回应

<soap:Envelope ...>
<soap:Header>
  <ws_Header_Out xmlns="WebServices">
   <sFlagStatus>int</sFlagStatus>
   <sErrorCode>string</sErrorCode>
  </ws_Header_Out>
</soap:Header>
<soap:Body>
  <GetCatResponse xmlns="WebServices">
    <GetCatResult>
     <xsd:schema>schema</xsd:schema>xml</GetCatResult>
   </GetCatResponse>
 </soap:Body>
</soap:Envelope>

【问题讨论】:

  • Axis 1.x 绝对是可怕的——我强烈建议你使用更现代的东西。
  • @skaffman 我们无法使用 Axis 2 转换 WSDL2JAVA。不知道为什么。
  • 我建议调查一下,然后,您可能会发现它比从 Axis 1 中获得任何有用的东西更有价值。
  • @skaffman:我会这样做,但我必须提一下,我的团队已经建立了一个通用客户端应用程序来处理所有 Web 服务调用。他们中的一些人已经成功地与axis1.4的一些服务建立了连接,我们已经为应用程序对其进行了标准化。因此,除非我有足够充分的理由证明我的上述问题无法用轴 1.4 解决,否则我现在不能要求所有人都更改他们的版本。
  • 谁能给我一个这样的 SOAP 信封请求和响应的示例客户端实现。 1.如何设置请求的header和body以及如何获取带有header和body的response 2.如何获取处理数据集(any)schemaxml GetCatResult>

标签: java web-services soap axis


【解决方案1】:

你可以使用eclipse来生成webservice客户端代码。您给它一个 WSDL(或它的位置),它会为您生成所有代理。见this tutorial

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-15
  • 1970-01-01
相关资源
最近更新 更多