0

我使用 AXIS2 作为客户端来处理 SOAP 响应。客户端存根是使用 WSDL2JAVA 命令生成的。为了解决一个问题,我试图在生成的存根中读取存储在 .xml 文件中的 xml 响应,并分配给 SOAPEnvelope。下面是为加载 .xml 内容而编写的代码:

InputStream is = new ByteArrayInputStream((sb.toString()).getBytes());
javax.xml.parsers.DocumentBuilderFactory factory = avax.xml.parsers.DocumentBuilderFactory.newInstance();
    factory.setNamespaceAware(true);
    javax.xml.parsers.DocumentBuilder builder = null;
    builder = factory.newDocumentBuilder();
    org.w3c.dom.Document doc = builder.parse(is);
    System.out.println("Got Document ..............");
    is.close();
org.apache.axis2.saaj.util.SAAJUtil su = new org.apache.axis2.saaj.util.SAAJUtil();
org.apache.axiom.soap.SOAPEnvelope _returnEnv1 = su.getSOAPEnvelopeFromDOOMDocument(doc);

在代码的最后一行(分配给 SOAPEnvelope)得到 ClassCastException。有人可以帮我解决这个问题。

4

1 回答 1

0

Axis2clients 用于发送请求和接收响应。为什么要尝试从文件加载响应?您应该会收到来自后端服务的响应。查看本指南以了解clientapi。您还可以在 axis2 文档中找到详细指南。

于 2013-05-20T18:45:10.850 回答