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]

Reply via email to