微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java Spring WS org.springframework.ws.soap.saaj.SaajSoapEnvelopeException:无法访问信封

我在不同的环境中解开了春天的奇怪行为.以下在本地tomcat 7.0.29上使用Soap UI工作正常,但确实返回下面提到的错误.

servlet.xml中:

fig.PropertyPlaceholderConfigurer">
    sspath:ws.propertiesstemPropertiesModeName" value="SYstem_PROPERTIES_MODE_FALLBACK" />
    stemEnvironment" value="true" />
FinitionHandlerAdapter">
    rmlocations" value="true" />
.soap.saaj.saajSoapMessageFactory" />
    .soap.server.endpoint.interceptor.PayloadValidatingInterceptor"
    autowire="byName">
    .soap.server.endpoint.soapFaultAnnotationExceptionResolver" />





Finition" abstract="true"
    class="org.springframework.ws.wsdl.wsdl11.DefaultWsdl11DeFinition">
    

scheam.xsd:

cpuCORES" type="xs:int" />
            cpu" type="xs:long" />
            subnet" type="xs:string" />
    cpus" type="xs:int" />
        cpus" type="xs:int" />
        cpu_size" type="xs:long" />
        cpu_usage" type="xs:double" />
        cpu_usage" type="xs:double" />
        subnet" type="xs:string" />
    

 

第一种方法适用于两种环境,第二种方法(placementRequest)返回:

Failed; nested exception is org.springframework.ws.soap.saaj.saajSoapEnvelopeException: Could not access envelope: Unable to create envelope from given source: ; nested exception is com.sun.xml.internal.messaging.saaj.soAPExceptionImpl: Unable to create envelope from given source: Failed; nested exception is org.springframework.ws.soap.saaj.saajSoapEnvelopeException: Could not access envelope: Unable to create envelope from given source: ; nested exception is com.sun.xml.internal.messaging.saaj.soAPExceptionImpl: Unable to create envelope from given source: Failed; nested exception is org.springframework.ws.soap.saaj.saajSoapEnvelopeException: Could not access envelope: Unable to create envelope from given source: ; nested exception is com.sun.xml.internal.messaging.saaj.soAPExceptionImpl: Unable to create envelope from given source: ) that prevented it from fulfilling this request.nestedservletexception: Request processing Failed; nested exception is org.springframework.ws.soap.saaj.saajSoapEnvelopeException: Could not access envelope: Unable to create envelope from given source: ; nested exception is com.sun.xml.internal.messaging.saaj.soAPExceptionImpl: Unable to create envelope from given source:

org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:583)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
根本原因

org.springframework.ws.soap.saaj.saajSoapEnvelopeException: Could not access envelope: Unable to create envelope from given source: ; nested exception is com.sun.xml.internal.messaging.saaj.soAPExceptionImpl: Unable to create envelope from given source:
org.springframework.ws.soap.saaj.saajSoapMessage.getEnvelope(saajSoapMessage.java:107)
org.springframework.ws.soap.AbstractSoapMessage.getSoapBody(AbstractSoapMessage.java:36)
org.springframework.ws.soap.AbstractSoapMessage.getPayloadSource(AbstractSoapMessage.java:46)
org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping.getLookupKeyForMessage(PayloadRootAnnotationMethodEndpointMapping.java:57)
org.springframework.ws.server.endpoint.mapping.AbstractMethodEndpointMapping.getEndpointInternal(AbstractMethodEndpointMapping.java:56)
org.springframework.ws.server.endpoint.mapping.AbstractEndpointMapping.getEndpoint(AbstractEndpointMapping.java:83)
org.springframework.ws.server.Messagedispatcher.getEndpoint(Messagedispatcher.java:248)
org.springframework.ws.server.Messagedispatcher.dispatch(Messagedispatcher.java:201)
org.springframework.ws.server.Messagedispatcher.receive(Messagedispatcher.java:168)
org.springframework.ws.transport.support.WebServiceMessageReceiverObjectSupport.handleConnection(WebServiceMessageReceiverObjectSupport.java:88)
org.springframework.ws.transport.http.WebServiceMessageReceiverHandlerAdapter.handle(WebServiceMessageReceiverHandlerAdapter.java:57)
org.springframework.web.servlet.dispatcherServlet.dodispatch(dispatcherServlet.java:875)
org.springframework.web.servlet.dispatcherServlet.doService(dispatcherServlet.java:807)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

根本原因

com.sun.xml.internal.messaging.saaj.soAPExceptionImpl: Unable to create envelope from given source:
com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:114)
com.sun.xml.internal.messaging.saaj.soap.ver1_1.soAPPart1_1Impl.createEnvelopeFromSource(SOAPPart1_1Impl.java:70)
com.sun.xml.internal.messaging.saaj.soap.soAPPartImpl.getEnvelope(SOAPPartImpl.java:122)
org.springframework.ws.soap.saaj.saaj13Implementation.getEnvelope(saaj13Implementation.java:169)
org.springframework.ws.soap.saaj.saajSoapMessage.getEnvelope(saajSoapMessage.java:103)
org.springframework.ws.soap.AbstractSoapMessage.getSoapBody(AbstractSoapMessage.java:36)
org.springframework.ws.soap.AbstractSoapMessage.getPayloadSource(AbstractSoapMessage.java:46)
org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping.getLookupKeyForMessage(PayloadRootAnnotationMethodEndpointMapping.java:57)
org.springframework.ws.server.endpoint.mapping.AbstractMethodEndpointMapping.getEndpointInternal(AbstractMethodEndpointMapping.java:56)
org.springframework.ws.server.endpoint.mapping.AbstractEndpointMapping.getEndpoint(AbstractEndpointMapping.java:83)
org.springframework.ws.server.Messagedispatcher.getEndpoint(Messagedispatcher.java:248)
org.springframework.ws.server.Messagedispatcher.dispatch(Messagedispatcher.java:201)
org.springframework.ws.server.Messagedispatcher.receive(Messagedispatcher.java:168)
org.springframework.ws.transport.support.WebServiceMessageReceiverObjectSupport.handleConnection(WebServiceMessageReceiverObjectSupport.java:88)
org.springframework.ws.transport.http.WebServiceMessageReceiverHandlerAdapter.handle(WebServiceMessageReceiverHandlerAdapter.java:57)
org.springframework.web.servlet.dispatcherServlet.dodispatch(dispatcherServlet.java:875)
org.springframework.web.servlet.dispatcherServlet.doService(dispatcherServlet.java:807)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

根本原因

javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: The markup in the document preceding the root element must be well-formed.
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:719)
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313)
com.sun.xml.internal.messaging.saaj.util.transform.EfficientStreamingTransformer.transform(EfficientStreamingTransformer.java:393)
com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:102)
com.sun.xml.internal.messaging.saaj.soap.ver1_1.soAPPart1_1Impl.createEnvelopeFromSource(SOAPPart1_1Impl.java:70)
com.sun.xml.internal.messaging.saaj.soap.soAPPartImpl.getEnvelope(SOAPPartImpl.java:122)
org.springframework.ws.soap.saaj.saaj13Implementation.getEnvelope(saaj13Implementation.java:169)
org.springframework.ws.soap.saaj.saajSoapMessage.getEnvelope(saajSoapMessage.java:103)
org.springframework.ws.soap.AbstractSoapMessage.getSoapBody(AbstractSoapMessage.java:36)
org.springframework.ws.soap.AbstractSoapMessage.getPayloadSource(AbstractSoapMessage.java:46)
org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping.getLookupKeyForMessage(PayloadRootAnnotationMethodEndpointMapping.java:57)
org.springframework.ws.server.endpoint.mapping.AbstractMethodEndpointMapping.getEndpointInternal(AbstractMethodEndpointMapping.java:56)
org.springframework.ws.server.endpoint.mapping.AbstractEndpointMapping.getEndpoint(AbstractEndpointMapping.java:83)
org.springframework.ws.server.Messagedispatcher.getEndpoint(Messagedispatcher.java:248)
org.springframework.ws.server.Messagedispatcher.dispatch(Messagedispatcher.java:201)
org.springframework.ws.server.Messagedispatcher.receive(Messagedispatcher.java:168)
org.springframework.ws.transport.support.WebServiceMessageReceiverObjectSupport.handleConnection(WebServiceMessageReceiverObjectSupport.java:88)
org.springframework.ws.transport.http.WebServiceMessageReceiverHandlerAdapter.handle(WebServiceMessageReceiverHandlerAdapter.java:57)
org.springframework.web.servlet.dispatcherServlet.dodispatch(dispatcherServlet.java:875)
org.springframework.web.servlet.dispatcherServlet.doService(dispatcherServlet.java:807)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

根本原因

org.xml.sax.SAXParseException: The markup in the document preceding the root element must be well-formed.
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1231)
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:636)
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:707)
com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:313)
com.sun.xml.internal.messaging.saaj.util.transform.EfficientStreamingTransformer.transform(EfficientStreamingTransformer.java:393)
com.sun.xml.internal.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:102)
com.sun.xml.internal.messaging.saaj.soap.ver1_1.soAPPart1_1Impl.createEnvelopeFromSource(SOAPPart1_1Impl.java:70)
com.sun.xml.internal.messaging.saaj.soap.soAPPartImpl.getEnvelope(SOAPPartImpl.java:122)
org.springframework.ws.soap.saaj.saaj13Implementation.getEnvelope(saaj13Implementation.java:169)
org.springframework.ws.soap.saaj.saajSoapMessage.getEnvelope(saajSoapMessage.java:103)
org.springframework.ws.soap.AbstractSoapMessage.getSoapBody(AbstractSoapMessage.java:36)
org.springframework.ws.soap.AbstractSoapMessage.getPayloadSource(AbstractSoapMessage.java:46)
org.springframework.ws.server.endpoint.mapping.PayloadRootAnnotationMethodEndpointMapping.getLookupKeyForMessage(PayloadRootAnnotationMethodEndpointMapping.java:57)
org.springframework.ws.server.endpoint.mapping.AbstractMethodEndpointMapping.getEndpointInternal(AbstractMethodEndpointMapping.java:56)
org.springframework.ws.server.endpoint.mapping.AbstractEndpointMapping.getEndpoint(AbstractEndpointMapping.java:83)
org.springframework.ws.server.Messagedispatcher.getEndpoint(Messagedispatcher.java:248)
org.springframework.ws.server.Messagedispatcher.dispatch(Messagedispatcher.java:201)
org.springframework.ws.server.Messagedispatcher.receive(Messagedispatcher.java:168)
org.springframework.ws.transport.support.WebServiceMessageReceiverObjectSupport.handleConnection(WebServiceMessageReceiverObjectSupport.java:88)
org.springframework.ws.transport.http.WebServiceMessageReceiverHandlerAdapter.handle(WebServiceMessageReceiverHandlerAdapter.java:57)
org.springframework.web.servlet.dispatcherServlet.dodispatch(dispatcherServlet.java:875)
org.springframework.web.servlet.dispatcherServlet.doService(dispatcherServlet.java:807)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

注意Apache Tomcat / 7.0.29 logs.Apache Tomcat / 7.0.29中提供了根本原因的完整堆栈跟踪

pom.xml中:

我读到可能是Web服务器覆盖了maven依赖项?或者您有任何建议如何解决这个问题?非常感谢,如果有人可以帮助!

最佳答案
我和你有同样的错误.我在这里找到了解决方案:http://mmmsoftware.blogspot.com.es/2009/06/xml-namespace-error-with-spring-ws.html

基本上你必须使用xalan和xercesimpl的上层版本.我的pom的依赖关系看起来像这样:

cope>compilecope>
        cope>compilecope>
        cope>compilecope>
        

我希望它对你有所帮助.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐