SOAP 1.1 and 1.2

GWS is able to communicate with Web services provided with SOAP 1.1 or SOAP 1.2.

Since 2.40, Genero Web Services (GWS) supports SOAP 1.2.

Server side

A Genero Web Services server can deliver a service in SOAP 1.1 or SOAP 1.2 using the com.WebService.setFeature function.

For example in $FGLDIR/demo/WebServices/calculator/server/calculatorServer.4gl, the calculator server offers the service in SOAP 1.1 and SOAP 1.2.
LET serv = com.WebService.CreateWebService("Calculator",serviceNS)
CALL serv.setFeature("Soap1.1",TRUE)
CALL serv.setFeature("Soap1.2",TRUE)

Client side

A GWS client can consume a service in SOAP 1.1 or SOAP 1.2.

For example:

  • To create a client that consumes the Calculator service in SOAP 1.1 use command:
    fglwsdl -soap11 -o ws_calculator http://localhost:8090/Calculator?WSDL
  • To create a client that consumes the Calculator service in SOAP 1.2 use command:
    fglwsdl -soap12 -o ws_calculatorSoap12 http://localhost:8090/Calculator?WSDL

Be aware that when generating different clients for each SOAP version, even if the same operations are provided, the services are using different protocols so the underlying generated stubs are also different.