Damitha, Did you get a chance to check with Axis2/Java? it would be a good interoperability testing.
Thanks, Deepal > Samisa Abeysinghe wrote: >> Looks good. >> Have you committed? > Yes it is in svn > > Thanks, > Damitha >> >> Samisa... >> >> >> On Tue, Dec 15, 2009 at 11:58 AM, Damitha Kumarage <dami...@wso2.com >> <mailto:dami...@wso2.com>> wrote: >> >> Hi, >> I have implemented Http keep alive support and Cookie session >> support for Axis2/C and commited to svn. >> Following is a brief introduction into how I implemented it. >> >> Cookie session support. >> >> I use Apache mod_dbd module to store sessions at server side. The >> functions for storing and retrieving session can be accessed >> through Axis2/C environment. I have >> implemented this for Apache module. Plan to implement this for >> Axis2/C standalone server soon(which is trivial) >> A service could support session by creating a hash table filling >> it with key value pairs and setting it to the message context. >> Then when this message context reach the server side sender it >> extract the values from the hash table and make a session string >> from that. It then generate a session id and >> store the session string against the id generated(using the above >> mentioned function in environment). >> Then it add the Set-Cookie header into the response message which >> has the cookie header value of session id and expiration time. >> >> In the client side the sessions are stored in a session map >> against the server. >> >> When the server get the Cookie header it will retrieve the session >> value by calling the environment function mentioned above and >> create a hash table and set it to the message context. >> >> Http Keep Alive support for Axis2/C client side. >> >> Here implementation is as following. >> When http transport sender is initialized it will mark whether >> keep alive is supported when sending messages. This is the default >> behaviour. However user can change this(in HTTP1.0) by >> keep alive transport sender parameter in axis2.xml. >> Now when http sender send the message for the first time it will >> store the http_client in the keep alive map in the configuration >> context, against the server. From there >> onwards it will reuse this http client for sending the messages. >> In http 1.0 case it will set the http keep alive header when >> sending the messages. >> The implementation handle session close messages from the server >> in http 1.1 case and keep alive header from server side in http >> 1.0 case. >> >> Attached is the patch for the changes to implement above. >> >> Thanks, >> Damitha >> -- >> __________________________________________________________________ >> >> Damitha Kumarage >> http://people.apache.org/ >> __________________________________________________________________ >> >> >> >> >> -- >> Samisa Abeysinghe >> Director, Engineering - WSO2 Inc. >> >> http://www.wso2.com/ - "The Open Source SOA Company" > > -- Thank you! http://blogs.deepal.org http://deepal.org