Definitely use a more recent version of CXF.   2.3.2 is ancient.

Anyway, the main difference between the messages is the namespace.   XFire uses 
http://webservice.lastPCP.com whereas CXF uses http://webservice.lastPCP.com/  
(note the trailing /).   My suggestion is to add the namespace attribute to the 
various @WebService annotations to force it to whichever you need/expect.

Dan


On Jun 11, 2013, at 12:41 AM, tj_8 <[email protected]> wrote:

> Hello,
> I have upgraded out webservice from XFire to CXF 2.3.2
> We are trying  if the same old soap request could be used to hit the new CXF
> service, having no impact to the client. I was able to comeup with such a
> implementation that I can use the same soap request but the response I am
> getting is different with respect to the namespace. Any pointer how I can
> get this aligned.
> 
> Below I have the soap request and the two responses. one from the old XFIRE
> and one from the new CXF. Also my annotation configuration and the JAXB
> package-info.java
> 
> Soap Request:
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:web="http://webservice.lastPCP.com";
> xmlns:ser="http://service.lastPCP.com";>
>   <soapenv:Header/>
>   <soapenv:Body>
>      <web:getLastPCP>
>         <web:in0>           
>            <ser:searchAcross>false</ser:searchAcross>
>            <ser:memberKey>7Mt</ser:memberKey>
>         </web:in0>
>      </web:getLastPCP>
>   </soapenv:Body>
> </soapenv:Envelope>
> 
> SOAP Response: XFIRE
> 
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";
> xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
>   <soap:Body>
>      <ns1:getLastPCPResponse xmlns:ns1="http://webservice.lastPCP.com";>
>         <ns1:out>
>            <pIdQualifier xmlns="http://service.lastPCP.com";></pIdQualifier>
>            <pId xmlns="http://service.lastPCPcom";>102866</pId>
>         </ns1:out>
>      </ns1:getLastPCPResponse>
>   </soap:Body>
> </soap:Envelope>
> 
> SOAP Response: CXF
> 
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
>   <soap:Body>
>      <ns3:getLastPCPResponse xmlns:ns3="http://webservice.lastPCP.com/";
> xmlns:ns2="http://service.lastPCP.com";
> xmlns:web="http://webservice.lastPCP.com";>
>         <ns3:out>
>            <ns2:pId>102866</ns2:pId>
>            <ns2:pIdQualifier></ns2:pIdQualifier>
>         </ns3:out>
>      </ns3:getLastPCPResponse>
>   </soap:Body>
> </soap:Envelope>
> 
> Service Annotation
> 
> @WebService
> @SOAPBinding(style = Style.DOCUMENT, use=Use.LITERAL, parameterStyle =
> ParameterStyle.WRAPPED )
> public interface LastPCPService {
> 
>       
>       @WebMethod(action="getLastPCP", operationName="getLastPCP")
>       @WebResult(name="out")
>    LastPCPRes getLastPCP(@WebParam(name = "in0")LastPCPReq request) ;
> }
> 
> PACKAGE-INFO.JAVA
> 
> @javax.xml.bind.annotation.XmlSchema(
>       namespace = "http://service.lastPCP.com";, 
>        xmlns = { 
>                       @javax.xml.bind.annotation.XmlNs( prefix = "web",
>                  namespaceURI = "http://webservice.lastPCP.com"; )},
>       elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
> 
> 
> package com.lastPCP.webservice;
> 
> THanks for your help.
> 
> 
> 
> 
> 
> --
> View this message in context: 
> http://cxf.547215.n5.nabble.com/Xfire-to-CXF-Backwards-compatiblity-tp5729084.html
> Sent from the cxf-user mailing list archive at Nabble.com.

-- 
Daniel Kulp
[email protected] - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com

Reply via email to