Powerful plugins for third-party standards and software
Included with the gSOAP toolkit are plugins to deploy Web services in Apache and IIS, and to support cURL and WinInet clients. Also included are plugins for OASIS WS-I standards, such as WS-Trust, WS-Security, WS-Discovery, WS-ReliableMessaging, WS-Addressing. In addition, Genivia offers separate products for other third-party standards, please see further below for details. Contact us if you have questions about XML standards and software offerings for other XML specifications not listed here.
The following source code software products are included in the standard edition gSOAP software.
WSDL and XML schema tools
The wsdl2h tool generates an "interface header file" in C/C++ source code for a given set of WSDLs and XSDs. This interface header file declares the Web services and XML data bindings in human-readable form. Given this interface header file, the soapcpp2 tool generates the server implementation code, the client-side code to invoke services, and the XML data binding implementation code to efficiently serialize C/C++ data in XML. See our Developer Center to get started with these gSOAP tools.
XML DOM programming and DOM API code generator
A powerful XML DOM programming API is integrated in the gSOAP library. While the XML DOM API is not internally used for gSOAP's fast streaming serialization with XML parsing and validation, this powerful DOM API can be used to parse and construct plain XML data on demand, depending on the requirements of your application. To ease your coding efforts writing XML DOM API source code, our domcpp tool can be used to generate the source code for you given an example XML file. See our XML DOM API programming documentation.
JSON and JSON REST programming and JSON API code generator
A powerful JSON programming API is included with gSOAP. JSON and XML-RPC are both supported by our API. Further, our JSON programming API supports JSON REST Web API development for both server and client sides. To ease your efforts to write JSON API source code, our jsoncpp tool can be used to generate the source code for you given an example JSON file. See our XML-RPC and JSON API programming documentation.
Client and server black-box testing with Test Messenger
For quality assurance we recommend to test your Web services and client applications. We made black-box testing very easy for you. The testmsgr (Test Messenger) tool included with gSOAP provides black-box testing of Web services and client applications by generating randomized XML messages. No coding is required. A wide range of testmsgr parameters allows you to use customized message templates to test applications with different settings, from moderate to aggressive. See our Test Messenger documentation.
Apache module plugin
The mod_gsoap Apache module offers the ability to run gSOAP services directly inside the Apache HTTP server. Our mod_gsoap Apache module supports the deployment of multiple gSOAP services that can run together with the usual services on Apache. This approach offers a production-quality Web services deployment scenario. See our Apache Module documentation.
ISAPI extension plugin
The mod_gsoap Internet Server Application Programming Interface (ISAPI) extension for gSOAP offers the ability to run gSOAP services directly inside the Microsoft Internet Information Server (IIS). This is achieved through an ISAPI extension DLL. The ISAPI extension supports the deployment of multiple gSOAP services that can run together with the usual services on IIS. This approach offers a production-quality Web services deployment scenario. See our ISAPI Extension documentation.
This plugin enables client applications to communicate through cURL by providng a bridge for the gSOAP engine to use libcurl for all internet communications. While gSOAP provides a full HTTP stack, libcurl can be used to support additional protocols and features by replacing gSOAP's HTTP stack. See our cURL plugin documentation.
This plugin enables client applications to communicate through Microsoft's WinInet API on Windows. This offers all of the advantages of WinInet-managed internet access through the Internet Options control panel of Windows. See our WinInet Plugin documentation.
This plugin enables client applications to be implemented on iOS devices with gSOAP. The plugin offers an objective-C implementation that makes it very easy to implement or port existing gSOAP client applications to iOS devices. See our iOS Plugin documentation.
The WS-Trust framework for gSOAP is an extensible WS-Trust implementation. Supports SAML 1.1/1.2 out of the box. Additional client-side and server-side WS-Trust operations can be easily added by the user. See our WS-Trust Extensible Framework for details.
The WSSE plugin for gSOAP implements the WS-Security specification for message-level authentication, message integrity, and message confidentiality. Enforces strong PKI security measures with RSA, DSA and ECDSA keys using the latest AES and SHA methods suported by OpenSSL, or you can use symmetric HMAC keys. See our WS-Security Plugin for details on how to secure SOAP/XML messages. Requires installation of the OpenSSL library.
The WSDD plugin for gSOAP implements the WS-Discovery specification. A Target Service (TS) is a service endpoint that makes itself available for discovery. A Discovery Proxy (DP) is an endpoint that facilitates discovery of Target Services by Clients (C). The WSDD plugin can be used to implement C, TS, and DP operations in gSOAP client, server, and proxy applications. See our WS-Discovery Plugin for details.
The WSRM plugin for gSOAP implements the WS-ReliableMessaging specification. Message delivery is made reliable by placing SOAP/XML messages in a sequence to ensure complete and ordered delivery. Lost messages are automatically resent. Messages are either accepted if the sequence is closed properly and in agreement between sender and receiver, or are collectively rejected when incomplete (depending on the speficied message delivery behavior). See our WS-ReliableMessaging Plugin for details.
The WSA plugin for gSOAP implements the WS-Addressing specification. SOAP/XML messages can be send asynchronously and SOAP/XML responses and faults can be redirected to alternate destinations. See our WS-Addressing Plugin for details.
HTTP digest authentication requires the HTTP-DA plugin. This plugin requires installation of the OpenSSL library. See our HTTP-DA Plugin for details.
HTTP session management
The server session plugin manages HTTP session cookies. See our Sessions Plugin for details.
The following source code software products are licensed by Genivia separately. Contact us to find out more or if you have questions about implementing other XML specifications not listed here.
High Protect plugin
Offers additional protection for applications developed with older gSOAP versions prior to 2.8.50. This plugin is not useful for gSOAP 2.8.50 and greater. If you have a commercial version of gSOAP then visit our Download page. Also available under the open source GPLv2 license, download the GPLv2 version of the plugin here.
OAuth2 for gSOAP
Implements OAuth 2.0. Can be used with HTTP/S and WS-Trust SAML2 bearer assertions.
SQL-XML ODBC bridge for gSOAP
Connects a relational database to import/export tables to/from XML via SQL queries. The ODBC bridge for C and C++ provides an efficient means to include SQL-sourced data in SOAP and XML REST messages.
ONVIF software for gSOAP
Provides instructions and source code to develop C and C++ applications that adhere to the ONVIF specifications.
FHIR and HL7 software for gSOAP
Provides instructions and source code to develop C and C++ applications that adhere to the FHIR HL7 specifications.