cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rupert Daniel (JIRA)" <j...@apache.org>
Subject [jira] Created: (CXF-1117) "Is not a valid SOAP version" exception generated when there are mutliple xmlns entries in the request
Date Thu, 18 Oct 2007 08:27:50 GMT
"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



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.


Mime
View raw message