You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by "Urciolo, Kevin" <Ke...@ngc.com> on 2008/04/30 00:41:31 UTC
SOAP 1.1 VS 1.2
I using CXF 2.1 WSDL->JAVA. The wsdl references SOAP 1.2.
<definitions name="abc"
targetNamespace="http://localhost:8080/abc/"
xmlns:tns="http://localhost:8080/abc/"
xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xop="http://www.w3.org/2004/08/xop/include"
xmlns:xmime="http://www.w3.org/2005/05/xmlmime"
xmlns:ns="http://localhost:8080/siststm/"
xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap12/"
xmlns:MIME="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://schemas.xmlsoap.org/wsdl/">
Why is the namespace in the XML request referencing SOAP 1.1?
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
I get the client by doing the following:
JaxWsProxyFactoryBean jaxWsProxyFactoryBean = new
JaxWsProxyFactoryBean();
jaxWsProxyFactoryBean.setServiceClass(Class.forName(portClassName));
jaxWsProxyFactoryBean.setAddress(url);
Object object = jaxWsProxyFactoryBean.create();
Re: SOAP 1.1 VS 1.2
Posted by Daniel Kulp <dk...@apache.org>.
On Tuesday 29 April 2008, Urciolo, Kevin wrote:
> I using CXF 2.1 WSDL->JAVA. The wsdl references SOAP 1.2.
>
> <definitions name="abc"
> targetNamespace="http://localhost:8080/abc/"
> xmlns:tns="http://localhost:8080/abc/"
> xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
> xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:xop="http://www.w3.org/2004/08/xop/include"
> xmlns:xmime="http://www.w3.org/2005/05/xmlmime"
> xmlns:ns="http://localhost:8080/siststm/"
> xmlns:SOAP="http://schemas.xmlsoap.org/wsdl/soap12/"
> xmlns:MIME="http://schemas.xmlsoap.org/wsdl/mime/"
> xmlns:WSDL="http://schemas.xmlsoap.org/wsdl/"
> xmlns="http://schemas.xmlsoap.org/wsdl/">
>
> Why is the namespace in the XML request referencing SOAP 1.1?
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>
> I get the client by doing the following:
> JaxWsProxyFactoryBean jaxWsProxyFactoryBean = new
> JaxWsProxyFactoryBean();
> jaxWsProxyFactoryBean.setServiceClass(Class.forName(portClassName));
> jaxWsProxyFactoryBean.setAddress(url);
> Object object = jaxWsProxyFactoryBean.create();
Any chance you can supply a quick testcase? Actually, just the wsdl would
do. I'm wonding if the the code generator isn't adding the appropriate
@SOAPBinding annotation onto the port class so it uses the default of
Soap 1.1.
One workaround MIGHT be to add:
jaxWsProxyFactoryBean.setWsdlLocation(wsdl);
to point at the wsdl and see if it picks up the correct stuff from there.
Alternatively, try:
jaxWsProxyFactoryBean.setBindingId(
"http://schemas.xmlsoap.org/wsdl/soap12/");
or
jaxWsProxyFactoryBean.setBindingId(
"http://www.w3.org/2003/05/soap/bindings/HTTP/");
--
J. Daniel Kulp
Principal Engineer, IONA
dkulp@apache.org
http://www.dankulp.com/blog