0

我正在尝试调试使用axis2 使用.wsdl 文件访问SOAP API 时遇到的问题。我正在使用这种方法: http://axis.apache.org/axis2/java/core/api/org/apache/axis2/client/ServiceClient.html#sendReceive(org.apache.axiom.om.OMElement)

sendReceive 抛出异常,我什至无法判断它是因为正在发送的内容还是因为服务器的响应。我希望能够看到发送和接收的 XML,但是我通过数据包嗅探找到它的尝试被 SSL 挫败了。具体来说,我得到的错误是:

SOAPProcessingException First Element must contain the local name, Envelope , but 
  found definitions  org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.constructNode 
  (StAXSOAPModelBuilder.java:299)

XMLStreamException Can not output XML declaration, after other output has 
already been done.  com.ctc.wstx.sw.BaseStreamWriter.throwOutputError (BaseStreamWriter.java:1473)

第一个错误让我认为我应该用 SOAPEnvelope 包装请求。当我这样做时,我得到第二个错误。我希望能够查看 XML,这样我就可以确切地知道消息发生了什么。

4

1 回答 1

0

如果您使用的是 Windows,请安装Wireshark并监控适配器上的流量以确定正在发送和接收的内容。在 Linux 上,请阅读手册页tcpdump(8)

于 2013-05-22T00:02:09.537 回答