cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "banks (JIRA)" <j...@apache.org>
Subject [jira] Updated: (CXF-2378) Capturing SOAP body passed from SSRS in CXF method as a parameter
Date Tue, 04 Aug 2009 20:13:14 GMT

     [ https://issues.apache.org/jira/browse/CXF-2378?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

banks  updated CXF-2378:
------------------------

    Description: 
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>



  was:
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>
--------------------------------------




> 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.


Mime
View raw message