Apache Sandesha2/C Team is pleased to announce the release of Apache Sandesha2/C version 0.91
You can download this release from
http://ws.apache.org/sandesha/sandesha2/c/download.cgi
This release is supposed to be used with the Axis2C 1.1.0 distribution which is released recently.

Key Features:

  1.  Support for WS-ReliableMessaging in both client side and server side of Axis2C.
        (according   the the WS-ReliableMessaging specification February 2005 and
        WS-ReliableMessaging specification August 2006).
  2. Pluggable storage framework.
  3. Configurable delivery assurances. Eexactly once delivery assurance is guaranteed.
  4. Support for both SOAP 1.1 and 1.2.
  5. Client API, which provides features for both general and advance users.
  6. Samples to test RM scenarios.
  7. Interoperablity with java and .net.
  8. Documentation

Major Changes Since Last Release
  
  1. Bug Fixes.
        This release is the Sandesha2/C compatible release for
        Axis2/C 1.1.


We welcome your early feedback on this implementation.
Thanks for your interest in Sandesha2/C

-- Apache Sandesha2/C Team --
