|
View:
New views
3 Messages
—
Rating Filter:
Alert me
|
|
|
CXF client sending wrong namespacesMy (cxf, aegis) webservice can be called successfully from .net.
Using something like ClientProxyFactoryBean sf = new JaxWsProxyFactoryBean(); sf.setServiceClass(IInstallerService.class); AegisDatabinding db = new AegisDatabinding(); sf.getServiceFactory().setDataBinding(db); sf.setAddress(url); IInstallerService service = (IInstallerService) sf.create(); service.someMethod("asdf", ...) Gets null parameters. The SOAP message that CXF sends is : <soap:Body> <ns1:executeCommand xmlns:ns1="http://interfaces.installer.services.commons.cswgroup.com/"> <ns1:arg0>woot</ns1:arg0><ns1:arg1 /> </ns1:executeCommand> </soap:Body> The .net (working) version is <soap:Body> <executeCommand xmlns="http://interfaces.installer.services.commons.cswgroup.com/"> <arg0 xmlns="">abc</arg0> <arg1 xmlns="" /> </executeCommand> </soap:Body> The key being the xmlns="" parts. Is there some configuration option that I've missed ? |
|
|
Re: CXF client sending wrong namespacesAegis only likes qualified schemas. There's a lot of things it won't do correctly if the schemas aren't qualified. However, the JaxWs frontend, by default, generates unqualified schemas. You are probably best to do sf.getServiceFactory().setQualifyWrapperSchema(true); In that case, the CXF message should be correct. (and if you regenerate the .NET stuff, it should then also be correct) Dan On Jul 23, 2008, at 11:02 AM, nigelm wrote: > > My (cxf, aegis) webservice can be called successfully from .net. > > Using something like > ClientProxyFactoryBean sf = new JaxWsProxyFactoryBean(); > sf.setServiceClass(IInstallerService.class); > > AegisDatabinding db = new AegisDatabinding(); > sf.getServiceFactory().setDataBinding(db); > > sf.setAddress(url); > IInstallerService service = (IInstallerService) sf.create(); > > service.someMethod("asdf", ...) > > Gets null parameters. The SOAP message that CXF sends is : > > <soap:Body> > <ns1:executeCommand > xmlns:ns1="http:// > interfaces.installer.services.commons.cswgroup.com/"> > <ns1:arg0>woot</ns1:arg0><ns1:arg1 /> > </ns1:executeCommand> > </soap:Body> > > The .net (working) version is > > <soap:Body> > <executeCommand > xmlns="http://interfaces.installer.services.commons.cswgroup.com/"> > <arg0 xmlns="">abc</arg0> > <arg1 xmlns="" /> > </executeCommand> > </soap:Body> > > The key being the xmlns="" parts. Is there some configuration option > that > I've missed ? > > -- > View this message in context: http://www.nabble.com/CXF-client-sending-wrong-namespaces-tp18612764p18612764.html > Sent from the cxf-user mailing list archive at Nabble.com. > --- Daniel Kulp dkulp@... http://www.dankulp.com/blog |
|
|
Re: CXF client sending wrong namespacesAh - Ok. This service was exported from CXF with aegis; I'm also trying to upgrade to 2.1.1 - is there something I should be telling my server configuration to make the parameters qualified ? These services have migrated steadily from XFire->CXF (2.0.x -> 2.1.1) so it's possible I've misssed something
|
| Free Forum Powered by Nabble | Forum Help |