我正在尝试使用Spring WS 2.2.2发行版的org.springframework.ws.clIEnt.core.webservicetemplate类来使用基于SOAP的Web服务,如下所示:
webservicetemplate.setDefaultUri(uri);webservicetemplate.setMessageSender(new SOAPMessageSenderWithAuth());res = (RESPONSE) webservicetemplate.marshalSendAndReceive(request);
该请求是使用从Web服务的WSDL文件生成的类构建的.
Web服务已经使用SOAP UI成功测试,但是当使用Java访问它时,Exception“SoapMessageCreationException:无法从inputStream创建消息:无法从给定源创建信封(saaj0511)”和“无法从给定源创建信封,因为root元素未命名为’Envelope'(saaj0514)“.
有没有人对此例外有任何建议?
提前致谢!
webservicetemplate的Spring bean定义如下:
例外情况是:
org.springframework.ws.soap.soapMessageCreationException:无法从inputStream创建消息:无法从给定的源创建信封:;嵌套异常是com.sun.xml.internal.messaging.saaj.soAPExceptionImpl:无法从给定源创建包络
这是使用Spring WS模板的Web服务客户端的类:
import javax.annotation.Resource;import org.apache.log4j.Logger;import org.springframework.ws.clIEnt.WebServiceIOException;import org.springframework.ws.clIEnt.core.webservicetemplate;import com.myproject.soap.clIEnt.services.soAPWebServiceClIEnt;/** * * @param
方法sendAndReceive被调用如下:
public MYDATAResponse createCustomer(final MYDATA request) { return (MYDATAResponse) soapWebServiceClIEnt.sendAndReceive((REQUEST) request,getCreateCustomerURI()); }
最佳答案@H_502_48@如果在解析服务响应时遇到异常,请尝试从soap UI发送请求并检查它是否正常工作.如果它在肥皂ui工作而不在这里,那么你没有得到适当的反应,这可能是因为不正确的要求.
在我的情况下,问题是我的端点url在代码中由“?wsdl”组成.去除后它工作得非常好. 总结
以上是内存溢出为你收集整理的java – 无法从给定的源创建信封全部内容,希望文章能够帮你解决java – 无法从给定的源创建信封所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)