<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> | |
<html> | |
<head> | |
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> | |
<meta name="Author" content="Robert A. van Engelen"> | |
<meta name="GENERATOR" content="Mozilla/4.76 [en] (X11; U; SunOS 5.8 sun4u) [Netscape]"> | |
</head> | |
<body bgcolor="#e6e6e6"> | |
<h1>Changelog</h1> | |
<ul> | |
<li>Version 1.1</li> | |
<ul> | |
<li>Added typedef conventions</li> | |
<li>Added enumerations</li> | |
<li>Added hexBinary encoding</li> | |
<li>Added base64 encoding</li> | |
<li>Enable pass by reference operator (&) for output parameter</li> | |
<li>Enable specification of methods in classes</li> | |
</ul> | |
<li>Version 1.2 (9/9/2001)</li> | |
<ul> | |
<li>Added WSDL generator</li> | |
</ul> | |
<li>Version 1.2w (9/14/2001)</li> | |
<ul> | |
<li>Win32 port</li> | |
<li>Fixed a socket communication problem in win32 version</li> | |
<li>Added namespace name pattern matching to ease validation</li> | |
</ul> | |
<li>Version 1.2.1 (10/24/2001)</li> | |
<ul> | |
<li>Chunked HTTP 1.1 transfer support</li> | |
<li>Improved buffering</li> | |
<li>Fixed a problem with nested vector allocation</li> | |
</ul> | |
<li>Version 1.2.2 (11/2/2001)</li> | |
<ul> | |
<li>Support for special XML element names with dots, underscores, and center dots (see documentation section 5.3)</li> | |
<li>Fixed a decoding problem with dynamic array of pointers to polymorphic objects</li> | |
<li>Fixed an encoding problem with enumerations</li> | |
<li>Added a "safe-mode" flag to disable serialization of multi-referenced objects: | |
<pre> | |
soap_disable_href = 1; | |
</pre> | |
You can set this global flag anywere in the code, but at least before serialization is performed. | |
It will disable the use of href attributes when sending multi-reference data. Instead, the data is copied | |
in the payload. | |
<b>When set, this flag will hang the serializer when sending cyclic data structures.</b> | |
</li> | |
</ul> | |
<li>Version 1.2.3 (12/5/2001)</li> | |
<ul> | |
<li>Added <i>bool</i> type encoding/decoding.</li> | |
<li>Added dynamic multi-dimensional arrays.</li> | |
<li>Added support for primitive polymorphic types.</li> | |
<li>Added full support for CDATA content decoding.</li> | |
<li>More convenient customization of SOAP Headers and Faults. No separate <tt>soapheader.h</tt> and <tt>soapfault.h</tt> files | |
required (and therefore no <tt>.cpp</tt> files have to be created for these). Instead, the compiler generates customized SOAP | |
Header and SOAP Fault marshalling routines when struct/class <tt>SOAP_ENV__Fault</tt> and/or <tt>SOAP_ENV__Header</tt> are | |
specified in the header file input to the compiler. | |
</li> | |
<li>On-demand generation of the marshalling routines for the primitive types, which reduces the size of the executables.</li> | |
<li>Fixed a WSDL incompatibility problem in the WSDL generator.</li> | |
<li>Improved decoding of multi-reference elements (no <tt>xsi:type</tt> required anymore in receiving message so gSOAP does not break).</li> | |
<li>Improved support for encoding/decoding indirect data (e.g. pointers to pointers to data).</li> | |
<li> | |
Improved encoding of data with the same pointers to shared data but with the shared data declared with different XML schema types | |
(formerly encoded as multi-reference data which could cause type incmpatibilities at the receiving side). For example, in the | |
declarations <tt>typedef char *xsd__NCName; xsd__NCName *s="SOAP"; char *t = s;</tt> the pointers <tt>s</tt> and <tt>t</tt> point | |
to the same data, but will not be encoded as multi-reference data since the types are different. | |
</li> | |
<li>Added flag: | |
<pre> | |
soap_enable_null = 1; | |
</pre> | |
When set, all NULL pointers will be explicitly encoded. By default, NULL pointers are omitted from the SOAP payload. For example, | |
with this flag set all NULL strings and other NULL pointer data will appear as nil values in the SOAP payload. | |
</li> | |
<li>Added flag: | |
<pre> | |
soap_enable_embedding = 1; | |
</pre> | |
When set, multi-reference data will be encoded inline which will guarantee the exact preservation of the structure of the data | |
transmitted. However, some SOAP implementations do not support embedding inline multi-reference data although this encoding style | |
is likely to be included in future verions of the SOAP protocol. The flag is useful when creating C++ applications that need to | |
communicate data to eachother and the data structures need to be preserved. Setting this flag may cause a duplication of | |
multi-reference data by the receiver created with the SOAP stub compiler when the data is part of a struct/class or array. The | |
data is not copied by the receiver when the struct/class or arrays use pointers to the data type. | |
</li> | |
<li>Added the ability to declare virtual destructors.</li> | |
<li>Fixed a compilation error with fixed-size array of pointers.</li> | |
<li>Fixed a problem with padding in Base64 (en/de)coding.</li> | |
<li>Fixed XML entity decoding (hexadecimal).</li> | |
<li>Added encoding of sparse arrays. A sparse array MUST be declared as a (fixed-size of dynamic) array of pointers. NULL pointer | |
values are omitted from the output and SOAP-ENC:position attributes are used for non-NULL elements.</li> | |
<li>Changed soap_put and soap_get functions to include explicit schema type parameters. This fixed a problem with Web services that need to return typedef-ed XML schema types The new stdsoap.cpp and stdsoap.h files are incompatible with the previous version(s). | |
</li> | |
<li>Added the ability to ignore the names of accessors when decoding fields through the use of a leading | |
<tt>_</tt> in a field name. For example: | |
<pre> | |
ns__mymethod(xsd__string in, xsd__string &_return); | |
</pre> | |
When used to invoke a remote method, the actual element name of the remote return parameter used by the service is insignificant. | |
</li> | |
<li>Improved memory management. Added new function: <tt>soap_destroy()</tt> to remove all class instances.</li> | |
<li>Improved documentation.</li> | |
<li>Added <i>time_t</i> type support, but still need to add encoding/decoding routines to the runtime (next version).</li> | |
<li>Added <i>wchar_t</i> type support, but still need to add encoding/decoding routines to the runtime (next version).</li> | |
</ul> | |
<li>Version 1.2.4 (12/17/2001)</li> | |
<ul> | |
<li>Added support for wide character strings (<i>wchar_t*</i>).</li> | |
<li>Added support for <i>time_t</i> type.</li> | |
<li>Added support for SOAP literal encoding.</li> | |
<li>Fixed an obscure bug in the deserialization of data from the SOAP4R toolkit that caused the deserializer to hang.</li> | |
<li>Fixed a problem with the soap_disable_href flag.</li> | |
<li>Fixed a problem with the position attributes in sparse multi-dimensional arrays.</li> | |
<li>Fixed a problem with the generation of .nsmap files.</li> | |
<li>Fixed a problem with mixed content decoding in strings.</li> | |
</ul> | |
<li>Version 1.2.5 (12/27/2001)</li> | |
<ul> | |
<li>Fixed a memory leak in the block allocation scheme used for strings, hexBinary, and base64 types.</li> | |
<li>Fixed a bug in the WSDL generator for fixed-size arrays.</li> | |
<li>Fixed a problem with the use of trailing underscores in field names in struct/class declarations.</li> | |
</ul> | |
<li>Version 1.2.6 (1/25/2002)</li> | |
<ul> | |
<li>Improved portability.</li> | |
<li>Improved id/href hash table efficiency and storage.</li> | |
<li>Improved namespace URI matching with wildcards.</li> | |
<li>Improved stand-alone deployment.</li> | |
<li>Added <tt>soap_disable_response_count</tt> flag.</li> | |
<li>Fixed operator declaration parsing (cast operators).</li> | |
<li>Fixed a WSDL generator bug for output parameters and enumeration types.</li> | |
<li>Renamed function <tt>soap_return_fault()</tt> into <tt>soap_send_fault()</tt>.</li> | |
</ul> | |
<li>Version 2.0 (2/2/2002)</li> | |
<ul> | |
<li>Rewrote the compiler and the run-time to create a thread safe implementation.</li> | |
</ul> | |
<li>Versions 1.2.7 and 2.0.1 (2/11/2002)</li> | |
<ul> | |
<li>Added compiler options (-h -c -d -p).</li> | |
<li>Added optional specification of service name, location, and namespace URI in header file.</li> | |
<li>Improved interoperability.</li> | |
</ul> | |
<li>Versions 1.2.8 and 2.0.2 (2/24/2002)</li> | |
<ul> | |
<li>Added function callbacks to support customized I/O and HTTP operations. This allows for plug-in HTTP code, NSAPI interface code, | |
reading/writing from/to files or string buffers, etc.</li> | |
<li>Added HTTP 1.0/1.1 keep-alive support.</li> | |
<li>Added HTTP 1.1 chunked transfer support.</li> | |
<li>Added <tt>soap_disable_request_count</tt> flag.</li> | |
<li>Added <tt>soap_enable_array_overflow</tt> flag.</li> | |
<li>Added type naming conventions to serialize elements without generating <tt>xsi:type</tt> attributes.</li> | |
<li>Fixed a fixed-size array decoding problem (type mismatch).</li> | |
<li>Fixed </sequence/> bug in the WSDL generators.</li> | |
</ul> | |
<li>Versions 1.3 and 2.1 (3/10/2002)</li> | |
<ul> | |
<li>Added client-side SSL (HTTPS) support (thanks to Massimo Cafaro for his suggestions).</li> | |
<li>Added a naming convention for dynamic array <tt>__ptr</tt> fields which enables the naming of the XML tags of array elements.</li> | |
<li>Added WSDL Header and Fault schema generation.</li> | |
<li>Improved doc/literal encoding style.</li> | |
<li>Improved WSDL service/schema namespace generation.</li> | |
<li>Fixed SOAP-ENV:Headers to be self contained.</li> | |
<li>Fixed WSDL generation of xsd schema types declared as string.</li> | |
<li>Fixed a method overriding type clash for derived classes.</li> | |
<li>Fixed spurious occurrence of id="-1" with soap_enable_null flag enabled.</li> | |
<li>Fixed a front-end gSOAP compiler problem with forward and cyclic struct declarations.</li> | |
</ul> | |
<li>Versions 1.3.1 and 2.1.1 (3/25/2002)</li> | |
<ul> | |
<li>Added header file source constructs to support transient data types and transient struct/class fields to control gSOAP's code generatiion window for (de)serialization routines.</li> | |
<li>Added callback for handling XML elements that are ignored on the receiving side (e.g. because of schema type problems). This feature is intended to enhance the reliability of services/clients.</li> | |
<li>Added server-side SSL support and included an example multi-threaded stand-alone SSL secure SOAP server example.</li> | |
<li>Added proxy server support.</li> | |
<li>Improved message logging in gSOAP 2.1.1 (thanks to Jessie Ragsdale for his suggestions).</li> | |
<li>Fixed WSDL generation for dynamic arrays.</li> | |
<li>Fixed deserialization of empty multi-ref derived class instances.</li> | |
</ul> | |
<li>Versions 1.3.2 and 2.1.2 (4/15/2002)</li> | |
<ul> | |
<li>Added socket timeout management.</li> | |
<li>Added optional client and server cookie support.</li> | |
<li>Added support for maxOccurs="unbounded" for arbitrary elements in complexTypes (not just limited to SOAP arrays).</li> | |
<li>Improved generation of schema <extension> definitions to allow XML validation in the presence of class overriding.</li> | |
<li>Fixed ULONG64 type handling.</li> | |
<li>Fixed light validation problem (now rejects invalid XML schema URIs).</li> | |
<li>Fixed a deserialization type mismatch with typedef-ed pointer primitives.</li> | |
<li>Fixed WSDL and schema interoperability problems.</li> | |
</ul> | |
<li>Versions 1.3.3 and 2.1.3 (4/27/2002)</li> | |
<ul> | |
<li>Added 'mustUnderstand' declaration qualifier for SOAP Header processing.</li> | |
<li>Added soap.actor attribute for SOAP Header processing.</li> | |
<li>Added method-header-part directive to identify methods with header message associations (WSDL requirement).</li> | |
<li>Added bitmask (de)serialization.</li> | |
<li>Added FastCGI support.</li> | |
<li>Improved DLL build support (gSOAP 2.1.3 only).</li> | |
<li>Improved WinCE support (gSOAP 2.1.3 only, thanks to Sean Ryan for his suggestions).</li> | |
<li>Improved Mac OS X support.</li> | |
<li>WSDL generator improvements and fixes.</li> | |
<li>Workaround a bug in .NET SOAP Headers (non-unique id name values in .NET).</li> | |
<li>Fixed disable_href=1 bug.</li> | |
<li>Fixed `XML in string parsing' code generation problem.</li> | |
</ul> | |
<li>Versions 1.3.4 and 2.1.4 (6/9/2002)</li> | |
<ul> | |
<li>Added non-blocking soap_accept() with timeout management.</li> | |
<li>Added support for SOAP Header and Fault declared as classes.</li> | |
<li>Added syntax for 'extern' declarations for transient types and fields.</li> | |
<li>Added support for SOAP Headers in SOAP Fault messages.</li> | |
<li>Added one-way SOAP messages (2.1.4 only).</li> | |
<li>Added support for user-defined (de)serializers (2.1.4 only).</li> | |
<li>Improved object memory management.</li> | |
<li>Improved support for AIX and HP platforms.</li> | |
<li>Fixed proxy server connect bug.</li> | |
<li>Fixed an OpenSSL bug.</li> | |
<li>Fixed soap_instantiate_ClassX() derived class allocation problem.</li> | |
<li>Fixed generation of spurious .xsd files when lots of trailing underscores are used by identifiers in the header file.</li> | |
<li>Fixed syntax error that occured with header files containing cyclic class declarations.</li> | |
<li>Fixed 'class in struct' and 'vector of classes' VMT initialization bugs.</li> | |
</ul> | |
<li>Version 2.1.5 (6/22/2002)</li> | |
<ul> | |
<li>Added non-blocking remote method calls (not supported in win32 version).</li> | |
<li>Added specification of default values for struct/class fields.</li> | |
<li>Added specification of minOccurs and maxOccurs for struct/class fields.</li> | |
<li>Added resolution operator '::' parsing.</li> | |
<li>Added abstract method declaration support.</li> | |
<li>Fixed WSDL generation of SOAP doc/lit.</li> | |
<li>Fixed WITH_FASTCGI option.</li> | |
</ul> | |
<li>Version 2.1.6 (7/10/2002)</li> | |
<ul> | |
<li>Added DIME attachment support.</li> | |
<li>Added win32 non-blocking sockets.</li> | |
<li>Changed "%lld"/"%llu" format strings into "%I64d"/"%I64u" format string for win32.</li> | |
<li>Improved I/O.</li> | |
<li>Fixed multi-dimensional dynamic array (de)serialization.</li> | |
<li>Fixed WSDL enum and header namespace generation.</li> | |
</ul> | |
<li>Version 2.1.7 (8/6/2002)</li> | |
<ul> | |
<li>Added generation of example SOAP/XML request and response messages by the compiler.</li> | |
<li>Added RSA to SSL stack.</li> | |
<li>Added two callbacks to the HTTP stack for efficient handling of HTTP headers in Apache-mod and IIS.</li> | |
<li>Added compiler option -m (malloc() memory control) and updated doc on memory allocation policies.</li> | |
<li>Added compiler option -i to support #include and #define directives.</li> | |
<li>Improved HTTP cookie support to handle new and old cookie protocols.</li> | |
<li>Improved external class (de)serialization support (std::string example is included).</li> | |
<li>Fixed a SSL+proxy connect problem.</li> | |
<li>Fixed uninitialized '//gsoap..executable:' string which caused sporadic exits.</li> | |
<li>Fixed XML literal string encoding problem introduced with DIME.</li> | |
<li>Fixed and removed WSDL duplicate response elements.</li> | |
<li>Fixed LONG64 and ULONG64 types for WinCE.</li> | |
</ul> | |
<li>Version 2.1.8 (8/28/2002)</li> | |
<ul> | |
<li>Added client-side proxy class source code generation.</li> | |
<li>Added soap.enable_strict flag to enable very strict validation of messages (unknown namespace URIs and XML elements are not allowed).</li> | |
<li>Added soap.socket_flags to control socket send() and recv() flags, e.g. to disable broken pipe signals (soap.socket_flags=MSG_NOSIGNAL).</li> | |
<li>Added '//gsoap ns service method-action' header file directive.</li> | |
<li>Added server-side soap_receiver_fault() and soap_sender_fault() functions to return SOAP 1.1 and SOAP 1.2 faults.</li> | |
<li>Added seeding of the PRNG for SSL.</li> | |
<li>Added soapcpp2 compiler option '-2' to automate SOAP 1.2 support (SOAP 1.2 features are Beta-release).</li> | |
<li>Changed keep-alive support (see docs).</li> | |
<li>Improved WSDL output.</li> | |
<li>Workaround Bison 1.6 for win32 bug in gSOAP win32 version.</li> | |
<li>Fixed a wild-card matching bug in soap_tag_cmp()</li> | |
<li>Fixed a string deserialization problem.</li> | |
<li>Fixed a deserialization bug that can occur in a client-server combination with gSOAP and Apache Axis.</li> | |
</ul> | |
<li>Version 2.1.9 (9/08/2002)</li> | |
<ul> | |
<li>Added HTTP proxy authentication.</li> | |
<li>Added plug-in registry (Beta).</li> | |
<li>Changed compiler exit status for compilation errors.</li> | |
<li>Fixed stdin/stdout binary mode for DIME transfer with gSOAP for win32.</li> | |
<li>Fixed win32 soapcpp2.exe bug in .res.xml file generation.</li> | |
</ul> | |
<li>Version 2.1.10 (10/14/2002)</li> | |
<ul> | |
<li>Added '//gsoap ns service method-documentation:' directive.</li> | |
<li>Added provision for additional documentation text with '//gsoap ns service name:' directive.</li> | |
<li>Added #import directive to (recursively) import gSOAP header files.</li> | |
<li>Added plugin features and included a plugin example in 'extras' directory.</li> | |
<li>Added automake/autoconf to generic gSOAP package (thanks to Christian Aberger).</li> | |
<li>Added -DWITH_LOCALTIME compilation option to control time_t (de)serialization.</li> | |
<li>Changed time_t (de)serialization (now uses timegm() and gmtime() to handle UTC). Found that mktime() library call is buggy on some systems.</li> | |
<li>Improved and reorganized package directory structure.</li> | |
<li>Fixed DDL linkage problem with instantiate/delete routines dealing with class instance memory management.</li> | |
<li>Fixed compilation problem with Sun Workshop CC compiler and other compilers that adopt a specfic class VMT structure that could break object (de)serializers.</li> | |
<li>Fixed bug in WSDL generator with multiple service namespaces.</li> | |
</ul> | |
<li>Version 2.1.11 (11/10/2002)</li> | |
<ul> | |
<li>Added a multi-functional SOAP router application (message forwarding and | |
message relay server).</li> | |
<li>Added keep-alive support for asynchronous one-way messages.</li> | |
<li>Improved parsing and handling of function prototypes and class methods.</li> | |
<li>Improved modular design to enable the compilation and linkage of multiple client and service modules.</li> | |
<li>Improved user-defined SOAP Fault detail handling.</li> | |
<li>Fixed SSL_accept bug.</li> | |
<li>Fixed serialization of pointers to dynamic arrays with multi-references.</li> | |
</ul> | |
<li>Version 2.2 (12/12/2002)</li> | |
<ul> | |
<li>Added XML attribute (de)serialization support.</li> | |
<li>Added XSD QName parsing and conversion support (typedef char *xsd__QName).</li> | |
<li>Added compression support (-DWITH_ZLIB requires Zlib).</li> | |
<li>Changed and improved transport and encoding settings by splitting up sending and | |
receiving side flags into separate sets. Depricated soap.enable_X and soap.disable_X flags.</li> | |
<li>Improved keep-alive support (automatic client and server sides).</li> | |
<li>Fixed a bug in mustUnderstand handling.</li> | |
<li>Fixed a sporadic crash of the gSOAP compiler under win32.</li> | |
<li>Fixed user-defined SOAP Fault output in WSDL generator.</li> | |
</ul> | |
<li>Version 2.2.1 (12/18/2002)</li> | |
<ul> | |
<li>Added callbacks to enable custom streaming of DIME attachments.</li> | |
<li>Fixed broken serialization of pointers to dynamic arrays with NULL | |
__ptr</li> | |
<li>Fixed some WSDL issues.</li> | |
</ul> | |
<li>Version 2.2.2 (1/25/2003)</li> | |
<ul> | |
<li>Added gzip support (-DWITH_GZIP requires Zlib).</li> | |
<li>Added faccept() callback.</li> | |
<li>Improved HTTP chunking.</li> | |
<li>Fixed OpenSSL and accept_timeout (OpenSSL requires blocking sockets).</li> | |
<li>Fixed HTTP header buffering.</li> | |
<li>Fixed UTF8 decoding of a subset of characters (2-octet UTF).</li> | |
<li>Fixed 'operator==' parsing.</li> | |
<li>Fixed a couple of WSDL issues.</li> | |
</ul> | |
<li>Version 2.2.3 (3/2/2003)</li> | |
<ul> | |
<li>Added server-side HTTP basic authentication.</li> | |
<li>Improved speed.</li> | |
<li>Improved Tru64 portability.</li> | |
<li>Changed fpost() function callback signature: added 'int port' argument and | |
added port number to the Host: HTTP header.</li> | |
<li>Fixed memory leak in SSL connect when using OpenSSL DH.</li> | |
<li>Fixed custom (de)serializer definitions parsing.</li> | |
<li>Fixed a gzip/deflate bug with large transfers.</li> | |
<li>Fixed use of ftime() for time_t (de)serialization with timezones.</li> | |
<li>Fixed a problem with concurrent access to global namespace table by multiple threads.</li> | |
<li>Fixed crash with //gsoap name directive.</li> | |
<li>Fixed deserialization bug with multi-ref object encoding by Apache Axis.</li> | |
</ul> | |
<li>Version 2.3.1-8 (9/24/2003)</li> | |
<ul> | |
<li>Updated SOAP 1.2 support (implements the SOAP 1.2 recommendation).</li> | |
<li>Added STL container support and built-in std::string encoding.</li> | |
<li>Added stand-alone Web server example to serve static and dynamic pages | |
with a new HTTP GET plugin.</li> | |
<li>Added void* (de)serialization, e.g. useful to support polymorphism with C | |
applications and as an alternative to union types.</li> | |
<li>Added XML DOM parser to support SOAP document encoding and for mixing of application data (de)serialization within an XML DOM.</li> | |
<li>Added WITH_LEAN and WITH_LEANER compilation flags to improve support for | |
small-memory devices such as WinCE and Palm.</li> | |
<li>Added SOAP_XML_CANONICAL flag for canonical XML output (XML-C14N support | |
and SOAP 1.2 normalization support).</li> | |
<li>Added '//gsoap ns method-encoding:' directive.</li> | |
<li>Added '//gsoap ns schema import:' directive.</li> | |
<li>Added optional class getter and setter methods for object (de)serialization.</li> | |
<li>Added 'volatile' qualifier to indicate that certain type declarations | |
should be treated 'as-is' when types are declared externally (e.g. part of a | |
library).</li> | |
<li>Added a new string notation for declarations to specify simpleType restriction patterns.</li> | |
<li>Added soapcpp2 -I option to indicate #import path.</li> | |
<li>Added support for (de)serialization of application data to C++ iostreams.</li> | |
<li>Added fsslauth() callback.</li> | |
<li>Added HTTP code error values.</li> | |
<li>Added SOAP_MALLOC and SOAP_FREE macros to replace malloc() and free().</li> | |
<li>Added soap_strdup(soap, string) to copy strings in gSOAP's memory space.</li> | |
<li>Added chunked streaming DIME output (thanks to J. Li for his | |
suggestions).</li> | |
<li>Added SOAP_SOCKET for win32 support (thanks to B. Gille for his suggestions).</li> | |
<li>Added SO_LINGER support (soap.connect_flags).</li> | |
<li>Added support for iso-8859-1 encoded XML parsing (default is utf8).</li> | |
<li>Added #module directive to build shared libraries.</li> | |
<li>Added C++ namespaces support to enable the compilation and linkage of | |
multiple client and service codes.</li> | |
<li>Added WITH_CASEINSENSITIVETAGS compilation flag to enable case insensitive | |
XML parsing.</li> | |
<li>Improved WSDL types schema output.</li> | |
<li>Improved custom (de)serialization (note: extras/stringtest example | |
has been changed).</li> | |
<li>Improved SOAP literal encoding.</li> | |
<li>Improved speed.</li> | |
<li>Improved HTTP1.0/1.1 support.</li> | |
<li>Removed soap.defaultNamespace in favor of automatic SOAP literal output based on soap.encodingStyle value.</li> | |
<li>Fixed GMT to DST localtime conversion, but still issues with Sun Solaris.</li> | |
<li>Fixed dynamic array __offset handling.</li> | |
<li>Fixed class definition order.</li> | |
<li>Fixed sporadic memory leak in HTTP cookie reader.</li> | |
<li>Fixed multi-threaded server-side OpenSSL initialization.</li> | |
<li>Fixed enumeration-based XML attribute deserialiation.</li> | |
<li>Fixed SOAP-ENC:position attribute placement when arrays of pointers are | |
mixed with nillable data.</li> | |
<li>Fixed crash when parsing incorrect SOAP/XML attribute content.</li> | |
</ul> | |
<li>Version 2.4 (12/20/2003)</li> | |
<ul> | |
<li>New WSDL parser and importer with improved support for SOAP document style and literal encoding.</li> | |
<li>Added optional full schema validation (partial by default). Use SOAP_XML_STRICT flag.</li> | |
<li>Added SSL session caching.</li> | |
<li>Added soap_set_namespaces() to switch namespace tables.</li> | |
<li>Fixed plugin memory leak. REQUIRED CHANGE to plugin allocation and copying.</li> | |
<li>Fixed server-side blocking SSL accept.</li> | |
</ul> | |
<li>Version 2.4.1 (01/07/2004)</li> | |
<ul> | |
<li>Changed _USCORE_ and _DOT_ naming conventions into _USCORE and _DOT to improve name | |
mapping.</li> | |
<li>Updated DOM parser (integrated into core gSOAP library).</li> | |
<li>Improved WSDL parser and included several new features.</li> | |
<li>Fixed WSDL schema import and WSDL literal output.</li> | |
</ul> | |
<li>Version 2.5 (01/28/2004)</li> | |
<ul> | |
<li>Changed default encoding to SOAP RPC literal, as mandated by WS-I Basic | |
Profile 1.0a and best practices.</li> | |
<li>Added soapcpp2 compiler option -e for backward compatibility to gSOAP | |
2.4.1 and earlier that use SOAP RPC | |
encoding defaults (helpful when migrating gSOAP projects to 2.5).</li> | |
<li>Added automatic compiler-side WS-I Basic Profile 1.0a compliance warnings | |
(warns before deployment).</li> | |
<li>Added fget() callback for HTTP GET responses.</li> | |
<li>Added IPv6 support contributed by Wind River Systems.</li> | |
<li>Added VxWorks support contributed by Wind River Systems.</li> | |
<li>Improved SOAP Fault handling.</li> | |
<li>Improved interop with Axis RPC encoded response messages.</li> | |
<li>Fixed std::string xsi:type attribute value.</li> | |
<li>Fixed gSOAP 2.4 problems with serialization of enumeration values outside enumeration range.</li> | |
<li>Fixed gSOAP 2.4 Pocket PC build problem.</li> | |
<li>Fixed wsdl2h SOAP Fault and Header output.</li> | |
</ul> | |
<li>Version 2.5.1 (02/12/2004)</li> | |
<ul> | |
<li>Improved WSDL output and WS-I BP1.0a compliance.</li> | |
<li>Improved WSDL parser stability.</li> | |
<li>Fixed problem parsing empty xsd:base64Binary elements.</li> | |
<li>Fixed VxWorks and TRU64 portability issues.</li> | |
<li>Fixed HTTP 400 error problem.</li> | |
<li>Fixed soapcpp2 2.5 stability problem with one-way messages.</li> | |
</ul> | |
<li>Version 2.5.2 (02/23/2004)</li> | |
<ul> | |
<li>Fixed WSDL generation warnings.</li> | |
<li>Fixed LONG64 problem for PalmOS.</li> | |
<li>Fixed module build link problem and 'components' example.</li> | |
</ul> | |
<li>Version 2.6.0 (03/28/2004)</li> | |
<ul> | |
<li>Changed default style to doc/lit.</li> | |
<li>Improved doc/lit WSDL handling.</li> | |
<li>Improved soapcpp2 sample SOAP/XML message output.</li> | |
<li>Added proxy support for wsdl2h.</li> | |
<li>Fixed CONNECT method for proxy+SSL+gzip.</li> | |
</ul> | |
<li>Version 2.6.1 (06/07/2004)</li> | |
<ul> | |
<li>Added optional multibyte character support.</li> | |
<li>Improved WSDL output.</li> | |
<li>Fixed STL container multi-ref deserialization problem with missing data.</li> | |
<li>Fixed doc/lit server code generation from doc/lit WSDL definitions.</li> | |
</ul> | |
<li>Version 2.6.2 (06/12/2004)</li> | |
<ul> | |
<li>Added Matlab(tm) code output (documentation is not availabel yet).</li> | |
<li>Improved wsdl2h output for schema facets.</li> | |
<li>Updated dom.cpp.</li> | |
<li>Changed wsdl2h std::string* --> std::string generation (to avoid double | |
pointers std::string**). To obtain old behavior, add entry "xsd:string = | |
| std::string* | std::string*" to typemap.dat.</li> | |
<li>Fixed wsdl2h handling of <xs:include>.</li> | |
<li>Fixed wsdl2h handling of empty namespaces and absent targetNamespace | |
schema attributes.</li> | |
<li>Fixed MB char handling.</li> | |
</ul> | |
<li>Version 2.7.0a/b/c/d/e/f (09/10/2004, 2/1/2005)</li> | |
<ul> | |
<li>Added multipart/related support for SOAP with MIME attachments (SwA).</li> | |
<li>Added API functions for DIME open and closed layout support.</li> | |
<li>Added //gsoap schema elementForm/attributeForm directive.</li> | |
<li>Added fclosesocket, fshutdownsocket, fpoll, fserveloop callbacks.</li> | |
<li>Added soap.authrealm string attribute to set basic authentication realm.</li> | |
<li>Added soap.prolog string attribute to output optional XML prolog with processing instructions and directives.</li> | |
<li>Added soapcpp2 option -t.</li> | |
<li>Added wsdl2h options -e and -i.</li> | |
<li>Added Palm OS and Symbian instructions and examples.</li> | |
<li>Added xml-rpc support and examples.</li> | |
<li>New mod_gsoap directory with modules for Apache 1.x/2.x, IIS, and WinInet</li> | |
<li>Improved XML validation with SOAP_XML_STRICT flag.</li> | |
<li>Improved memory footprint (reduced code size and reduced serialization overhead).</li> | |
<li>Improved runtime id-ref serialization and deserialization.</li> | |
<li>Improved wsdl2h translation.</li> | |
<li>Updated dom.cpp.</li> | |
<li>Updated webserver.c.</li> | |
<li>Fixed issues with namespace qualification in doc/lit messages.</li> | |
<li>Fixed SOAP_HREF error.</li> | |
<li>Fixed proxy+SSL+zlib+chunking.</li> | |
<li>Fixed SSL select() polling in frecv().</li> | |
<li>Fixed wsdl2h multidimensional SOAP arrays generate problem.</li> | |
</ul> | |
<li>Version 2.7.1 (03/31/2005)</li> | |
<ul> | |
<li>Added new style of C++ proxy/object generation (objects derived from | |
soap struct), enabled with soapcpp2 option -i.</li> | |
<li>Added new features to wsdl2h generation to enable user-defined class/struct extensions such as member data and functions which are declared in typemap.dat.</li> | |
<li>Added MIME multipart/form-data parsing to support HTTP POST HTML form handling (example included in samples/webserver).</li> | |
<li>Added built-in memory leak detection enabled with -DDEBUG.</li> | |
<li>Added UDDI v2 API and examples.</li> | |
<li>Added 'WS' directory with WS-* protocols, such as WS-Addressing. This part will mature as more WS-* protocols will be added over time.</li> | |
<li>Added fseterror() callback.</li> | |
<li>Improved wsdl2h code output.</li> | |
<li>Enhanced Web server sample code, and httpget and logging plugins.</li> | |
<li>Fixed base64/hexBinary XML attribute serialization.</li> | |
<li>Fixed a missing min/maxOccurs check for validation.</li> | |
</ul> | |
<li>Version 2.7.2 (05/11/2005)</li> | |
<ul> | |
<li>Added SOAP-over-UDP IPv4/IPv6 support with examples.</li> | |
<li>Added UDDI v2 API publish example.</li> | |
<li>Improved wsdl2h parser accepting multiple WSDL/XSD files from the command | |
line.</li> | |
<li>Fixed wsdl2h schema import from included schema bug.</li> | |
<li>Fixed SOAP 1.2 Fault Subcode handling.</li> | |
</ul> | |
<li>Version 2.7.3 (06/27/2005)</li> | |
<ul> | |
<li>Added MTOM attachment support.</li> | |
<li>Added 'plugin' directory with example plug-ins.</li> | |
<li>Added 'import' directory for commonly #import-ed files such as stlvector.h.</li> | |
<li>Added HTTP digest authentication plug-in 'plugins/httpda.h'.</li> | |
<li>Added new import feature to wsdl2h using ns=<uri> convention for | |
typemap.dat files, which enables wsdl2h to parse a WSDL that imports known | |
WSDLs/schemas such as XOP, XML MIME, and WS-Addressing without actually | |
reading the imported WSDL/schemas.</li> | |
<li>Added soapcpp2 options -C and -S to generate client- or server-only | |
codes.</li> | |
<li>Added multi-path support for soappcpp2 option -I.</li> | |
<li>Added C and C++ examples to combine multiple clients and services into one | |
executable, see the samples/components directory in the package.</li> | |
<li>Improved soapcpp2 option -e to generate SOAP RPC encoding style client/server codes by | |
default (instead of document/literal by default).</li> | |
<li>Fixed wsdl2h circular import of schemas.</li> | |
<li>Fixed attributeGroup handling in wsdl2h.</li> | |
<li>Fixed soapcpp2 handling of 'invisible' tags, e.g. __any, that should only be | |
populated after all else failed to match the delivered XML content.</li> | |
<li>Fixed validation of numeric enum constants with SOAP_XML_STRICT validation.</li> | |
<li>Fixed engine's spurious log file generation issue.</li> | |
</ul> | |
<li>Version 2.7.4 (07/24/2005)</li> | |
<ul> | |
<li>Added union serialization.</li> | |
<li>Added '//gsoap ... type-documentation:' directive.</li> | |
<li>Added '//gsoap ... method-mime-type:' directive.</li> | |
<li>Added wsdl2h option -g for generating global element/attribute declarations for building modular .h files.</li> | |
<li>Added wsdl2 option -y for generating typedef synonyms for structs and enums, with improved handling of typedefs by soapcpp2.</li> | |
<li>Added wsdl2 option -u to disable union generation for xs:choice.</li> | |
<li>Improved wsdl2h documentation generation.</li> | |
<li>Improved wsdl2h and soapcpp2 MIME bindings.</li> | |
<li>Improved dynamic memory allocation in engine with look-aside buffering.</li> | |
<li>Fixed wsdl2h xs:complexContent/extension/attributeGroup translation.</li> | |
<li>Fixed wsdl2h xs:choice with min/maxOccurs != 1 translation.</li> | |
<li>Fixed wsdl2h soap:body parts attribute.</li> | |
</ul> | |
<li>Version 2.7.5 (08/01/2005)</li> | |
<ul> | |
<li>Added xs:redefine support to wsdl2h.</li> | |
<li>Added HTML POST application/x-www-form-urlencoded plugin httpform.c | |
(demo samples/webserver).</li> | |
<li>Improved wsdl2h output.</li> | |
<li>Fixed wsdl2h handling of duplicate values in single enum list.</li> | |
</ul> | |
<li>Version 2.7.6 revision a/b/c/d/e (08/19/2005-02/18/06)</li> | |
<ul> | |
<li>Added WS-Security authentication, tokens, and signatures with new 'wsse' | |
plugin, see documentation in 'doc' directory and 'samples/wsse'.</li> | |
<li>Added 'doc' directory for documentation and moved soapdoc2.html and soapdoc2.pdf.</li> | |
<li>Added SOAP_XML_INDENT flag.</li> | |
<li>Added soap_sender_fault_subcode() and soap_receiver_fault_subcode() for SOAP 1.2 subcodes.</li> | |
<li>Added WITH_DOM compile flag to enable flushing serialized and deserialized | |
data to DOM (as well as a stream).</li> | |
<li>Added soapcpp2 option -L.</li> | |
<li>Added soapcpp2 option -a.</li> | |
<li>Added wsdl2h option -a (for backward compatibility).</li> | |
<li>Added wsdl2h option -d.</li> | |
<li>Added WITH_TCPFIN comile flag to enable optional shutdown with how=1 (TCPFIN) after final sends to force EOF on other side (used to be the default behavior).</li> | |
<li>Added schema substitutionGroup support.</li> | |
<li>Added soap_ssl_init().</li> | |
<li>Improved DOM implementation and documentation.</li> | |
<li>Improved AS400 portability.</li> | |
<li>Improved schema choice support.</li> | |
<li>Fixed wsdl2h multiple schema include issue.</li> | |
<li>Fixed soaps2dateTime and soap_timegm functions when timegm is not available.</li> | |
<li>Fixed exc-c14n formatting.</li> | |
<li>Fixed SOAP 1.2 fault handling.</li> | |
<li>Fixed missing soap_flag___item2 issue.</li> | |
<li>Fixed partial MIME boundary parsing issue.</li> | |
<li>Fixed base64 parsing with WITH_FAST.</li> | |
<li>Fixed MIME encoding of \r\r sequence.</li> | |
<li>Fixed QName normalization issue.</li> | |
<li>Fixed relative path schema import.</li> | |
<li>Fixed MTOM cid matching with URL encoded IDs.</li> | |
<li>Fixed wide-character (wchar_t*) XML attribute handling.</li> | |
<li>Fixed std::vector element id-ref ordering in deserializer.</li> | |
</ul> | |
</ul> | |
</body> | |
</html> |