You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Daniel Kulp (JIRA)" <ji...@apache.org> on 2007/10/19 19:04:58 UTC
[jira] Resolved: (CXF-1117) "Is not a valid SOAP version" exception
generated when there are mutliple xmlns entries in the request
[ https://issues.apache.org/jira/browse/CXF-1117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp resolved CXF-1117.
------------------------------
Resolution: Invalid
Fix Version/s: Invalid
Assignee: Daniel Kulp
The soap message that your client is sending is wrong. The namespace on the soap:Envelope and soap:Body elements should be:
http://schemas.xmlsoap.org/soap/envelope/
but that message has it set to:
http://schemas.xmlsoap.org/wsdl/soap/
> "Is not a valid SOAP version" exception generated when there are mutliple xmlns entries in the request
> ------------------------------------------------------------------------------------------------------
>
> Key: CXF-1117
> URL: https://issues.apache.org/jira/browse/CXF-1117
> Project: CXF
> Issue Type: Bug
> Components: Soap Binding
> Affects Versions: 2.0.1
> Environment: Linux X64 SLES 9 JDK 1.6_02
> Reporter: Rupert Daniel
> Assignee: Daniel Kulp
> Fix For: Invalid
>
>
> I have a perl client using one of my SOAP services and their request looks like.....
> <soap:Envelope
> xmlns:ns1="http://www.apertio.com/irate"
> xmlns:ns2="http://jaxb.dev.java.net/array"
> soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <soap:Body>
> <ns1:getSessions
> xsi:nil="true"/>
> </soap:Body>
> </soap:Envelope>
> This results in the following exception on the server....
> INFO: Interceptor has thrown exception, unwinding now
> org.apache.cxf.binding.soap.SoapFault: "http://schemas.xmlsoap.org/wsdl/soap/" is not a valid SOAP version.
> at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:92)
> at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:57)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207)
> at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:73)
> at org.apache.cxf.transport.servlet.ServletDestination.doMessage(ServletDestination.java:78)
> at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:231)
> at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:139)
> at org.apache.cxf.transport.servlet.CXFServlet.invoke(CXFServlet.java:271)
> at org.apache.cxf.transport.servlet.CXFServlet.doPost(CXFServlet.java:249)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
> at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> at java.lang.Thread.run(Unknown Source)
> When I use the SOAP service through one of my Java clients using the JAX-WS Proxy, it all works fine. Below is an example of the Java client request....
> <soap:Envelope
> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
> <soap:Body>
> <ns1:getSessions
> xmlns:ns1="http://www.apertio.com/irate">
> </ns1:getSessions>
> </soap:Body>
> </soap:Envelope>
> Looking at the code in ReadHeadersInterceptor.java for the method handleMessage() it looks like it is only expecting one namespace URL definition in the request (I could be wrong!!!).
> Any ideas on what is wrong or any possible work arounds on the server side?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.