Proposal for Kandula - A Web services / WS-Fx Subproject to implement WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity
September 27 2004, Dasarath Weeratunge (email@example.com)
Kandula will provide an open-source implementation of WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity based on Axis. The initial implementation will be in Java using Axis/Java, but it is possible to do a C++ implementation based on Axis/C++ as well.
The specifications WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity, released jointly by Microsoft, IBM and BEA Systems define a framework for transaction management in the web services environment.
The operations of web service activities that are common to explicit coordination are defined in the WS-Coordination specification. The WS-AtomicTransaction and WS-BusinessActivity specifications each define a type of agreement coordination that addresses the needs of complementary classes of activities. Both of them leverage WS-Coordination and jointly provide agreement coordination infrastructure for tightly and loosely coupled activities, whether short- or long-lived. In particular, activities that require the traditional atomic, consistent, isolated and durable (ACID) properties of transactions are natural users of WS-AtomicTransaction. Those activities that require tentative operations that are visible to third parties before the final outcome of an activity are natural users of WS-BusinessActivity.
In addition to providing an implementation, a major focus of this project would be to ensure interoperability with other implementations of above specifications, particularly those by Microsoft (.NET) and IBM.
About the name: "Kandula" was a royal elephant at the time of king Dutugamunu who ruled Sri Lanka during the Anuradhapura epoch in the island's history. The legends say that king Dutugamunu rode on Kandula when he fought with king Elara to claim his heritage and bring unity to the island nation.
Scope of the subproject
The purpose of this subproject is to create and maintain an implementation of the WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity specifications (as defined by IBM, MSFT, and BEA - http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnglobspec/html/wsatspecindex.asp).
In addition to providing an open source implementation for the web services coordination and transaction management framework defined by WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity specifications it also aims to integrate existing open source JTA implementations (e.g. JOTM, JBoss, Geronimo, etc.) with the web services transaction management framework so that J2EE web services and clients may take part in atomic transactions while using JTA for transaction management.
We have developed a working prototype for WS-Coordination, WS-AtomicTransaction at Lanka Software Foundation (LSF) in collaboration with University of Moratuwa, Sri Lanka. Work is also under way to support WS-BusinessActivity on top of this existing framework. This implementation would be an ideal starting point for this project. The source code/docs of this prototype implementation may be downloaded from http://www.lug.lk/~dasaru/ws-tx_apache.tgz. It is also available in JIRA (http://issues.apache.org/jira/browse/WSFX-37).
For further details please refer to,
Resources to be created
CVS repository: ws-fx-kandula
Initial set of committers
Dasarath Weeratunge (firstname.lastname@example.org)
Sanjiva Weerawarana (email@example.com)
Srinath Perera (firstname.lastname@example.org)
Apache sponsoring individual
Davanum Srinivas (email@example.com)