Monday, October 25, 2010

gSOAP 2.8.0

1  Introduction
  The gSOAP tools provide an automated SOAP and XML data binding for C and C++ based on compiler technologies. The tools simplify the development of SOAP/XML Web services and XML application in C and C++ using autocode generation and advanced mapping methods. Most toolkits for Web services adopt a WSDL/SOAP-centric view and offer APIs that require the use of class libraries for XML-specific data structures. This forces a user to adapt the application logic to these libraries because users have to write code to populate XML and extract data from XML using a vendor-specific API. This often leads to fragile solutions with little or no assurances for data consistency, type safety, and XML validation. By contrast, gSOAP provides a type-safe and transparent solution through the use of compiler technology that hides irrelevant WSDL-, SOAP-, and XML-specific details from the user, while automatically ensuring XML validity checking, memory management, and type-safe serialization. The gSOAP tools automatically map native and user-defined C and C++ data types to semantically equivalent XML data types and vice-versa. As a result, full SOAP interoperability is achieved with a simple API relieving the user from the burden of WSDL/SOAP/XML details, thus enabling him or her to concentrate on the application-essential logic.
The gSOAP tools support the integration of (legacy) C/C++ codes (and other programming languages when a C interface is available), embedded systems, and real-time software in SOAP/XML applications that share computational resources and information with other SOAP applications, possibly across different platforms, language environments, and disparate organizations located behind firewalls.
The gSOAP tools are also popular to implement XML data binding in C and C++. This means that application-native data structures can be encoded in XML automatically, without the need to write conversion code. The tools also produce XML schemas for the XML data binding, so external applications can consume the XML data based on the schemas.
1.1  Getting Started
  To start building Web services applications or automate XML data bindings with gSOAP, you need:
The gSOAP package from http://www.genivia.com/Products/downloads.html (select gSOAP toolkit standard edition from the list of software packages)
A C or C++ compiler.
You may want to install OpenSSL and the Zlib libraries to enable SSL (HTTPS) and compression. These libraries are available for most platforms and are often already installed.
The gSOAP software is self-contained, so there is no need to download any third-party software (unless you want to use OpenSSL and the library is not already installed, or if you need to rebuild the soapcpp2 tool, see below).
The gSOAP packages available from SourceForge include pre-build tools in the gsoap/bin directory:
The wsdl2h WSDL/schema importer and data binding mapper tool.
The soapcpp2 stub/skeleton compiler and code generator.
Read more: gSOAP