My WSDL file fed to wsdl2java contains bindings to SOAP 1.2 over HTTP:
<binding name="foo-soap"
interface="tns:foo"
type="http://www.w3.org/2006/01/wsdl/soap"
wsoap:protocol="http://www.w3.org/2003/05/soap/bindings/HTTP">
<operation ref="tns:foo"
wsoap:mep="http://www.w3.org/2003/05/soap/mep/request-response"/>
<fault ref="tns:some-fault"
wsoap:code="soap:Receiver"/>
</binding>
Note the wsoap:protocol value. According to the W3C WSDL Primer
section 2.5.5¹, that protocol designates SOAP 1.2.
In my generated client stub class, there's a call that looks like
this:
,----
| env =
toEnvelope(getFactory(_operationClient.getOptions().getSoapVersionURI()),
`----
Options.getSoapVersionURI() always returns
http://schemas.xmlsoap.org/soap/envelope/
which is SOAP 1.1.
Shouldn't my WSDL bindings cause the stub to request SOAP 1.2 by
default? Is there some switch I have to set to enable this behavior?
Footnotes:
¹ http://www.w3.org/TR/2006/CR-wsdl20-primer-20060327/#more-bindings-soap
--
Steven E. Harris
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]