OpenSOAP Logo

OpenSOAP Project
The Middleware as Platform for IT Application Services


-About OpenSOAP

-Known Bugs


Japanese version
Chinese version

Release History

opensoap-2.0 (2003/05/31)

With the release of the OpenSOAP Server version 2.0, there have been many changes, including improvements in functionality, stability and reliability. This involved much re-design and code enhancements. As the changes for this release were quite extensive, at this point compile and normal operation have only been verified for Linux, and work is continuing preparing releases for other platforms. Also included in the package with the server is the OpenSOAP API, which at this time is still at version 1.0. The enhancements to the server are described below.

  • The transport interface was enhanced to work as an Apache DSO module. It is now also possible to transmit messages with attachments using DIME/MIME as defined by WS-Attachments and SOAP with Attachments (SwA). For this, Apache 2 must be configured to use DSO modules, and the modules must be added to the httpd.conf configuration file. The default endpoint for the client when calling the OpenSOAP server through the DSO module is
  • In moving toward enterprise use, the process logging functions have been greatly improved. Also, a single main process is now responsible for initiating and monitoring the existing OpenSOAP server processes, and on a sub-process failure, will automatically restart the sub-process. Furthermore, a trace of the activity of the OpenSOAP server can be obtained through the Trace Log, and general logging data can now be posted to the syslog service.
  • This release of the OpenSOAP server also sees a major change in the handling of asynchronous and forwarding messages. Header extensions and routing now allow the OpenSOAP server to forward messages to a variety of servers including database servers and work-process management servers. In this case the OpenSOAP server acts as a work flow engine between various web services. As an example, asynchronous message queue management and hi-level work-flow control has been implemented. However, in order to achieve this additional functionality, the existing handling of asynchronous messages has become less reliable due to extensive changes to header processing, and at this time is not completely stable. This issue is currently being addressed and should be resolved in the near future.

opensoap-1.0-20031201 (2003/12/01)

Changes from 1.0-20030903 (2003/09/03).


  • Major extensions to Transport API (detailed as follows)
  • Transfer-Encoding: Chunked compatible
  • Default HTTP Version has been changed to 1.1
  • Now understands Invoke Time HTTP Errors Status Codes
  • Support for HTTP Basic User Authentication
    Authentication API addition. ( OpenSOAPTransportSetAuthUserPass() )
    Can also be set with SetURL. (Eg. "http://user:pass@host/location/")
  • Support for HTTPS. Possible to specify in SetURL(https://).
    Added API to specify key for SSL Authentication.
  • Added the related error codes to the relevant categories.


  • Fixed many minor bugs.


  • More detailed error display for soaping thanks to Transport function extension.


  • Added the Echo sample.


  • Improved the processing of child process termination in the server.
  • Corrected the display of the SoapingClient transmission time.

opensoap-1.0-20030903 (2003/09/03)

Changes from 1.0-20030530 (2003/05/30).


  • Support for calling a service by specifying a HTTP URL
  • extended and fixed format of server.conf
  • Transport is now implemented using OpenSOAP API
  • The service call function and forwarding function processes have been incorporated into the message handling process (srvDrvCreator and fwderCreator are not used anymore)
  • Reorganized declarations and definitions of shared symbols
  • General review of code and bug fix


  • Added 2 new functions OpenSOAPXMLElmAddChildXMLDocument() and OpenSOAPXMLElmSetChildValueXMLDocument() that allow an XML character string to be inserted directly into a child element.
  • Added a counter mechanism to OpenSOAPInitialize() / Ultimate() for referencing nested OpenSOAPInitialize() calls.


  • Added the file win32config.h containing necessary definitions for compilation in the Windows environment

opensoap-1.0-20030530 (2003/05/30)

Changes from 1.0-20030331 (2003/03/31).


  • Fixed a problem in a pattern matching routine (eg. http: and https: yielded a match)
  • Fixed a problem that prevented correct processing of character strings containing '&' characters
  • Added User-Agent: OpenSOAP ${VERSION} to the HTTP header


  • Modified the cpplib sample dictionary client project file so that it can be compiled in "Release Mode"

Package / Samples

  • Compile and install all the included samples with a single "make install-samples" instruction

opensoap-1.0-20030331 (2003/03/31)

Changes from 1.0-20030228 (2003/02/28).


  • Japanese man pages for soaping and opensoap-server-ctl.


  • Created contrib directory and moved java and bridging there.
  • Added C++ class wrappers for the OpenSOAP API.

opensoap-1.0-20030228 (2003/02/28)

Changes from 1.0-20030201 (2003/02/01).


  • RPM package and spec file now available
  • man pages for soaping and opensoap-server-ctl
  • WSDL available for Soaping and some sample services


  • Fixed problem so that the output of the res_spool_table file is now sent to the directory specified in server.conf
  • Message size problem for Windows systems fixed
  • Repaired incomplete processing problem when specifiying forward_path
  • Removed the unused command reloadSrvConf


  • Modified configure and some source code to correct for socklen_t, sstream types in the Solaris+gcc-3.2.1 environment.
  • Modified source and configure files to not use AC_REPLACE_FUNCS to fix the LTLIBOBJS error when using autoconf-2.53.
  • Added locking functionality to deal with instability in Windows Multi-thread environment.
  • Updated comments to comply with the most recent release of Doxygen. Also included Security API in the Reference section.


  • Changed the name of the Soaping client command to "soaping".

opensoap-1.0-20030201 (2003/02/01)

Changes from 1.0-20030110 (2003/01/10) :


  • Added "restart" command to the opensoap-server-ctl script.
    Usage: opensoap-server-ctl restart


  • The functions OpenSOAPXMLElmGetChildValueMB() and OpenSOAPXMLElmGetChildValueWC() now return appropriate error codes.
  • Fixed a memory leak in the Serializer map of OpenSOAPUltimate().


  • All samples have been modified to be compatible with the new directory layout.
  • The samples CalcAsyncHop and CalcAsyncPath have been incorporated into the CalcAsync sample.
  • Added functions of CalcAsync CGI Client. (Options for displaying SOAP messages and message forwarding.)
  • Fixed problems with the ShoppingSec sample.
  • Added README for Transaction sample.


  • Prepared installation batch files for all Tools and Samples.

opensoap-1.0-20030110 (2003/01/10)

Changes from 1.0-20021130 (2002/11/30) :


  • Changed the directory structure making it possible to customize the installation.(/usr/local/opensoap)


  • Fixed a problem with asynchronous transmission processing.


  • Fixed a problem so that it is possible to use NULL prefix when setting the namespace.(XMLElmSetNameSpace, NamespaceIsSameString)


  • In Hello and other samples, fixed a Buffer overflow potential problem.


  • Fixed the location for DLinkList.c in the DSP files.

opensoap-1.0-20021130 (2002/11/30)

Changes from 1.0-20021031 (2002/10/31) :


  • Most of the documents have been translated into English.
  • API References can be generated by Doxygen from the source files.

opensoap-1.0-20021031 (2002/10/31)

Changes from 1.0-20020930 (2002/09/30) :


  • Modified HopCount processing. Yet incomplete for Async processing.


  • include/ErrorCode.h: OPENSOAP_IO_READ_ERROR=0x00040001L
  • Resolved the problem on Solaris for encoding characters specified with MIME charset.


  • The new category "Tools" was created.
  • Moved Transaction and SoapPING to src/tools/.


  • Rearranged Windows Visual C++ projects.
  • Added and modified documentation (English translation, etc.)

opensoap-1.0-20020930 (2002/09/30)

Changes from 1.0pre3 (2002/08/27) :


  • Modified messages on read/write error.
  • Modified the string process in FileIDFunc.
  • Modified to provide a service if the client specified a hopcount and the server has the service program.
  • Modified the handling of UTF-16/UTF-32 character code.


  • Modified the conversion routine of Wide Character <-> Multi Byte Character.
  • Modified the HTTP header process as case-insensitive.


  • Added new samples, Soaping(SOAP Ping sample), SimpleCalc and HelloSec.
  • CalcAsyncHop/Path:
    • Replaced getline(), to be compiled on Solaris, VC++, etc.
    • Modified to process Hop/Path in async = false (=Sync) case.
    • Changed the namespace for new service name.
  • ShoppingSec:
    • Added and modified SampleMessages files.
    • Modified Shopping{Sync,Async}.mak.
  • Calc: Modified document, added ssml, mak files.
  • SecCertAuth: Modified .mak file, added ssml.
  • CalcAsyncClient: Fixed the memory leak.


  • Added and modified documents.
  • Modified and verified for Windows VC++6.0.

opensoap-1.0pre3 (2002/08/27)

Changes from 1.0pre2 (2002/04/02) :


  • StdIO(Standard I/O) is supported for the connection between OpenSOAP Server and service programs.
  • Followed by that, sample SSML files, SSML specification documents and READMEs related to the samples are modified.
  • The problem that strings longer than 4096bytes were cut because of a bug for passing data, was resolved.
  • Duplication of a header in processing Async and Signature at once was corrected.


  • IPv6 address format (RFC2732) supported by http transport.
  • Memory leaks problems resolved.


  • The file names for CalcAsync, which were the same as Calc's, were changed.
  • Replaced Shopping by ShoppingSec.
  • Modified some codes in Transaction.
  • Modified SecCertAuth/GetCert so as to be compiled on Solaris.

And some other small bug fixes and corrections of codes and documents.

Past Development Schedule

OpenSOAP released three versions of packages by March, 2002.

  • 1.0alpha     29, Oct, 2001(DONE)
    • (Project internal release)
      This is only for internal developers, NOT released to public. This package includes OpenSOAP API and OpenSOAP Server. And can create and process basic SOAP messages with C language.

  • 1.0beta     19, Dec, 2001(DONE)
    • (Provisional public release)
      Bug-fixed version from alpha.
    1.0beta2    4, Feb, 2002(DONE)
      Certification and Encryption API for SOAP messages are available.

  • 1.0(pre1)    30, Mar, 2002(DONE)
    • (Official public release)
      OpenSOAP Server supports Windows-OS, Java class, Certification Authority and sample codes for DCOM / CORBA bridge are implemented. The whole package including source code can be downloaded from this site.
    1.0(pre2)    2, Apr, 2002(DONE)
      Bug-fixed version from 1.0pre1

Copyright (C) 2001-2004 Webmasters of All Rights Reserved.