[ 
https://issues.apache.org/jira/browse/CXF-2378?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12739706#action_12739706
 ] 

Daniel Kulp commented on CXF-2378:
----------------------------------


That soap message has absolutely nothing to do with that wsdl.       According 
to the wsdl, the "query" element should be in the namespace 
"http://testservice.xx.com/";, not "http://test.xx.jj.com";.     I assume that's 
just an error on your part trying to mask some proprietary namespaces.   Next, 
according to the schema, it should have a single child element named "Request" 
which is a string.   Your soap message has two children, <User> and <SQL>.    
Since "Request" isn't being found, it's just using null.   

> Capturing SOAP body passed from SSRS in CXF method as a parameter
> -----------------------------------------------------------------
>
>                 Key: CXF-2378
>                 URL: https://issues.apache.org/jira/browse/CXF-2378
>             Project: CXF
>          Issue Type: Task
>          Components: Soap Binding
>    Affects Versions: 2.1.2
>         Environment: Tomcat v 6
> CXF 2.1.2
> Windows XP
> Java 1.6.0_05
>            Reporter: banks 
>
> I am having problem recieving input from SSRS reporting services SOAP body as 
> a parameter in the method defined under my CXF web service. I can see the 
> SOAP header and body being passed but the parameter in the method is always 
> null. Can someone suggest what is the best way to achieve this.
> SOAP mesage coming in from SSRS looks like
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {expect=[100-continue], content-type=[text/xml], 
> connection=[Keep-Alive], host=[127.0.0.1:8082], 
> soapaction=[http://localhost:8080/testService/Soap], content-length=[612]}
> Messages: 
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
>   <soap:Body>
>     <query xmlns="http://test.xx.jj.com";>
>       <User>aa</User>
>       <SQL>
>              Select * from xx
>          </SQL>
>           </query>
>   </soap:Body>
> </soap:Envelope>
> --------------------------------------
> WSDL file.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions name="TestSoapService" 
>                   targetNamespace="http://testservice.xx.com/"; 
>                   xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"; 
>                   xmlns:tns="http://test.xx.com/"; 
>                   xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
>                   xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
>                   
> xmlns:cxf="http://cxf.apache.org/transports/http/configuration";>
>   <wsdl:types>
>               <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
> xmlns:tns="http://testservice.xx.com/"; attributeFormDefault="unqualified" 
> elementFormDefault="unqualified" targetNamespace="http://testservice.xx.com/";>
>                   
>                  <xs:element name="query">
>            <xs:complexType>
>                     <xs:sequence>
>                         <xs:element name="Request" type="xs:string" 
> maxOccurs="1" minOccurs="1"/>
>                     </xs:sequence>
>                 </xs:complexType>
>         </xs:element>
>         <xs:element name="response">
>            <xs:complexType>
>                     <xs:sequence>
>                         <xs:element name="Response" type="xs:string" 
> maxOccurs="1" minOccurs="1"/>
>                     </xs:sequence>
>                 </xs:complexType>
>         </xs:element>
>           
>         </xs:schema>
>   </wsdl:types>
>   
>   <wsdl:message name="query">
>     <wsdl:part name="request" element="tns:query"></wsdl:part>
>   </wsdl:message>
>    <wsdl:message name="queryResponse">
>      <wsdl:part name="response" element="tns:response"></wsdl:part>
>    </wsdl:message>
>     
>    <wsdl:portType name="TestSoapInternal">
>     <wsdl:operation name="query">
>       <wsdl:input name="query" message="tns:query">
>       </wsdl:input>
>       <wsdl:output name="queryResponse" message="tns:queryResponse">
>       </wsdl:output>
>     </wsdl:operation>
>   </wsdl:portType>
>   
>   <wsdl:binding name="TestSoapServiceSoapBinding" type="tns:TestSoapInternal">
>     <soap:binding style="document" 
> transport="http://schemas.xmlsoap.org/soap/http"/>
>     <wsdl:operation name="query">
>       <soap:operation soapAction="" style="document"/>
>       <wsdl:input name="query">
>         <soap:body use="literal"/>
>       </wsdl:input>
>       <wsdl:output name="queryResponse">
>         <soap:body use="literal"/>
>       </wsdl:output>
>     </wsdl:operation>
>   </wsdl:binding>
>   
>   <wsdl:service name="TestSoapService">
>     <wsdl:port name="TestSoapServicePort" 
> binding="tns:TestSoapServiceSoapBinding">
>       <soap:address location="http://localhost:8082/TestSoapServicePort"/>
>       <cxf:client AllowChunking="false"/>      
>     </wsdl:port>
>   </wsdl:service>
>   
> </wsdl:definitions>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to