The external service is an Axis 1.2 web service application being hosted on a Websphere server.
In JbiOutWsdl1Interceptor I logged the request message body after the call to saveLaterUsedNS(element) and here's the DOM body: <?xml version="1.0" encoding="UTF-8"?> <jbi:message xmlns:jbi="http://java.sun.com/xml/ns/jbi/wsdl-11-wrapper" xmlns:msg="http://wl0438.solutions.infinity.co.nz:9080/TREISFeedWeb/services/FeedService" name="getXMLFeedRequest" type="msg:getXMLFeedRequest" version="1.0"> <jbi:part> <rem:getXMLFeed xmlns:rem="http://remote.service.callcenter.nzta.govt.nz"> <rem:userName>myUser</rem:userName> <rem:password>password</rem:password> </rem:getXMLFeed> </jbi:part> </jbi:message> I've also tried modifying the saveLaterUsedNS() method to add the xsd and xsi namespaces in the jbi:message element in hope that it would be added later on but no luck. I'll have another go and try adding it in the getXMLFeed element instead. Freeman Fang wrote: > > Ok, I saw the namespace in the page source now, and I saw the incorrect > namespace xmlns:xsi="xsi" > Could you also append the soap message cxf bc provider send to your > external service? > And would you tell me what's the kind of external service are you using? > Freeman > > angeloNZ wrote: >> Hi, >> >> If you're viewing the xml in a browser you need to view the page source >> to >> see the namespace definitions but they're there. >> >> >> Freeman Fang wrote: >> >>> Hi, >>> Your soap response message looks really strange for me, there is no >>> prefix "soapenv" defined in your message, moreover, there's no any >>> prefix defined in your message, so it's an invalid soap message, that >>> can explain why getBodyElement(message) return null. >>> What kind of external service are you use? >>> >>> Freeman >>> >>> angeloNZ wrote: >>> >>>> Hi, >>>> >>>> Yes, I'm getting the full soap response I expect and yes the >>>> getBodyElement(message) is always null. >>>> Attached is the wsdl file being referenced from my cxf-bc xbean.xml. >>>> >>>> Sorry, I'm not clear what you meant with 'onwire soap message", were >>>> you >>>> referring to the soap response received by the requesting client? I've >>>> attached a copy of that as well. >>>> >>>> I don't have a testcase currently as I'm using soapUI as the soap >>>> client >>>> and >>>> I just discovered this problem as I was creating integration tests >>>> using >>>> the >>>> Spring approach meantioned in the site. >>>> >>>> http://www.nabble.com/file/p22488949/soapresponse.xml soapresponse.xml >>>> >>>> http://www.nabble.com/file/p22488949/FeedService.wsdl FeedService.wsdl >>>> >>>> >>>> Freeman Fang wrote: >>>> >>>> >>>>> Hi, >>>>> >>>>> You get your soap response from external service, and then in >>>>> JbiInWsdl1Interceptor the getBodyElement(message) always return null, >>>>> right? >>>>> Can you dump the onwire soap message returned from your external >>>>> service >>>>> and also append your wsdl used by cxf bc provider? >>>>> I suspect the soap version mismatch cause this problem. >>>>> Also if you can attach a testcase, that's would be great. >>>>> Freeman >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>> >>> >> >> > > > -- View this message in context: http://www.nabble.com/cxf-losing-namespace-declarations-tp20119972p22489791.html Sent from the ServiceMix - User mailing list archive at Nabble.com.
