Proposal for Sandesha2, a web services project for implementing WS-ReliableMessaging on top of Axis2.
The target of Sandesha project was to implement WS-Reliable messaging for Axis 1.x. Since Axis2 is about to make RC1 release we believe it is the time to start working on a WS-Reliable Messaging implementation for it.
The name Sandesha2 will make the life easy for users. (Since it goes with the name Axis2 and users can easily identify this as the Sandesha version for Axis2)
This module has to be engaged for services that need RM.
This handler will be added to the InFlow of the requests coming for the services which have the Sandesha module engaged.
This handler will be added to the OutFlow of the requests coming for the services which have the Sandesha module engaged.
This will be a thread. The function of this will be to re-transmit the messages whenever they have to be.
Sandesha Persistence Layer
This is a part that has to be further discussed before finalizing. We believe Axis2 should implement the functionality for storing message contexts and it should have an associated database for storing those. For storing other details Axis2 should make the database connection available for Modules. Using this connection Sandesha will implement its persistence layer.
This layer will basically support storage and retrieval of several beans (there will be several tables in the database representing these).
Sandesha Message Receiver
This message receiver will be engaged for RM control messages, when replies have to be generated. One example is the Create Sequence message.