求助各路大神:axis2调用服务端出现罕见异常 SOAP message MUST NOT contain a DTD

ahaoo0712 2013-07-22 04:47:38
客户端代码:
            RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
EndpointReference targetEPR = new EndpointReference("http://****webservice url****");

options.setTo(targetEPR);
options.setTimeOutInMilliSeconds(20000);
QName qName = new QName("qname");

Object[] result = serviceClient.invokeBlocking(qName, commandIssuedParam.toArrays(), new Class[] { String.class });
System.out.println(result[0]);




用此客户端在调用服务端服务时出现了异常





2013-07-22 16:40:32 main (BuilderUtil.java:688) INFO - OMException in getSOAPBuilder
org.apache.axiom.om.OMException: SOAP message MUST NOT contain a Document Type Declaration(DTD)
at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.createDTD(StAXSOAPModelBuilder.java:461)
at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:279)
at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.getSOAPEnvelope(StAXSOAPModelBuilder.java:204)
at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:154)
at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:140)
at org.apache.axis2.builder.BuilderUtil.getSOAPBuilder(BuilderUtil.java:686)
at org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:215)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:145)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:108)
at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:67)
at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:354)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:417)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:540)
at org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:521)
at org.apache.axis2.rpc.client.RPCServiceClient.invokeBlocking(RPCServiceClient.java:102)





跪求各路大神帮忙
...全文
822 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ahaoo0712 2013-07-24
  • 打赏
  • 举报
回复
产生这个问题的主要原因是 webServiceUrl写的有问题 比如:http://127.0.0.1/test/test?wsdl 有文档说可以去掉 ?wsdl 我发现去掉和不去掉都是可以访问的,那我为什么要去提呢? 还有 有的url是这样的: http://127.0.0.1/test/test/?wsdl 他比正常url多出一个 斜线 当我们把 ?wsdl 去提后 又没有注意把这个“/”也去掉了,就会产生我上面的那个问题 谢谢楼上
ahaoo0712 2013-07-22
  • 打赏
  • 举报
回复
wsdl不是我们自己的,确实没有问题
  • 打赏
  • 举报
回复
你要确保你服务器端的webservice搭建没问题,你可以在浏览器中输入访问的webservice访问地址,看看可以读到wsdl文件么

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧