You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by Rajith Attapattu <ra...@gmail.com> on 2006/01/19 16:20:56 UTC
[Axis2] Transport independent Session Mgt [Proposal]
Hi All,
I have been talking to several people over the last few days about Transport
independent session mgt and based on those discussions I have the following
open ended Proposal in the form of questions/comments. Sanjiva, Srinath,
Deepal and Ajith helped me a lot to gather information about the current
Axis2 and session mgt wrt web-services.
Background
---------------------
1. The motivation of T'port independent Session mgt stems from the idea of
Providing Axis2 with a proper Scalability and High availability model.
Having a clear definition of a session helps in providing scalability
and High-availability by means of session state replication (in other words
clustering)
2. The current Axis2 has no clear notion of a session. (Serveral ppl
expressed this concern)
Currently two concepts exist.
a) HttpSession based on cookies, if the Transport is http (the most
popular)
b) SOAP header for RM & Secure Conversations
Conerns/Challengers
--------------------------------
1. As I understand Using a SOAP header requires the client initiating it (so
possible impact on client code ???)
2. cookie based session mgt is only limited to http
3. If we are to manage a session outside of transport how are we going to
manage it?? where are we going to store it?? (raised by Deepal)
4. Is the session going to be outside of the Context Heirachy or within it??
Proposal
---------------
To identify a concept of Session Mgt that is transport independent. We need
an abstraction for a SessionManager and a Session interface that will have a
local and a distributable implementation.
The abstraction is nessacery and should be able to plug in any
implementation without impacting the current (or future) Functionality of
Axis2.
Comments/suggestions are welcomed to come of with a model that we all can
agree with.
Regards,
Rajith
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Rajith Attapattu <ra...@gmail.com>.
Ajith,
After a brief chat with Sanjiva I confiremed that your concern is actually
right.
With WS-Addressing if u want your session to span across multiple services
then u need a special SOAP header that everybody identifies.
So u are right about the client needing to understand that special ID. I
guess it's kind of unfortunate that you cannot do this explicitly via WSDL.
A good work around can be to pass a token between each method, but it
depends on the service author to define his WSDL the way he wants. In this
case Axis2 is not managing the session but the service author and client is.
(This is irrelevent and out of the scope for our disscussion, but thought it
was worth mentioning)
Actually Sanjiva should reply to this email and explain it a bit more as I
feel he is the best person to do that :).
Also look at the links(provided by Srinath) in the thread for the proposal
on t'port independent session mgt.
There is WS-Context that maybe more session orriented, but Sanjiva did
mention that it's not widely accepted yet. But that can change in the future
too.
But wether we use WS-Addressing or WS-Context we should hide that
complexicity from the service author and provide him an abstraction of
session thats independent of the Session Model we use at the protocol
method.
Regards,
Rajith.
On 1/21/06, Ajith Ranabahu <aj...@gmail.com> wrote:
>
> Hi All,
> I'm a bit concerned about this issue as well. I mean the addressing
> reference property will keep the SOAP session over different operations of
> the same service but if you are to keep the session across *services* then
> the client must know this special ID! Am I mistaken here or what ?
>
>
> On 1/21/06, Srinath Perera <he...@gmail.com> wrote:
> >
> > Sorry for interrupting, Let me ask a Q
> >
> > Let me take the inout MEP
> > When a server reply to a request reference property approach works!
> > because server uses reply to EPR. How can we make it work with the
> > request.
> >
> > How the client know the To EPR, is there any association to WSDL. How
> > first message on a interaction get a To EPR? Can you explain how in a
> > In-Out MEP, Service Provider (Server) keep a session across number of
> > In-Out Invocations?
> >
> > Thanks
> > Srinath
> >
> > On 1/20/06, Sanjiva Weerawarana <sa...@opensource.lk> wrote:
> > > On Fri, 2006-01-20 at 20:10 -0500, Rajith Attapattu wrote:
> > > >
> > > >
> > > > So if a service is deployed in SOAP session scope we do that with
> > > > the understanding that any client that uses this service supports
> > > > WS-Addressing.
> > > >
> > > > If above assumption is wrong, How about the client that don'
> > > > support WS-Addressing ?? is this scenario something to be concerned
> > or
> > > > not??
> > >
> > > No- WS-Addressing is a core part of the foundation of Web services. If
> >
> > > the client doesn't support WS-Addressing then its life is very boring
> > > because it can't participate in pretty much anything except message
> > > exchanges over a bi-directional protocol such as HTTP.
> > >
> > > Sanjiva.
> > >
> > >
> > >
> > >
> >
> >
> > --
> > ============================
> > Srinath Perera:
> > http://www.cs.indiana.edu/~hperera/
> > http://www.bloglines.com/blog/hemapani
> >
>
>
>
> --
> Ajith Ranabahu
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Ajith Ranabahu <aj...@gmail.com>.
Hi All,
I'm a bit concerned about this issue as well. I mean the addressing
reference property will keep the SOAP session over different operations of
the same service but if you are to keep the session across *services* then
the client must know this special ID! Am I mistaken here or what ?
On 1/21/06, Srinath Perera <he...@gmail.com> wrote:
>
> Sorry for interrupting, Let me ask a Q
>
> Let me take the inout MEP
> When a server reply to a request reference property approach works!
> because server uses reply to EPR. How can we make it work with the
> request.
>
> How the client know the To EPR, is there any association to WSDL. How
> first message on a interaction get a To EPR? Can you explain how in a
> In-Out MEP, Service Provider (Server) keep a session across number of
> In-Out Invocations?
>
> Thanks
> Srinath
>
> On 1/20/06, Sanjiva Weerawarana <sa...@opensource.lk> wrote:
> > On Fri, 2006-01-20 at 20:10 -0500, Rajith Attapattu wrote:
> > >
> > >
> > > So if a service is deployed in SOAP session scope we do that with
> > > the understanding that any client that uses this service supports
> > > WS-Addressing.
> > >
> > > If above assumption is wrong, How about the client that don'
> > > support WS-Addressing ?? is this scenario something to be concerned or
> > > not??
> >
> > No- WS-Addressing is a core part of the foundation of Web services. If
> > the client doesn't support WS-Addressing then its life is very boring
> > because it can't participate in pretty much anything except message
> > exchanges over a bi-directional protocol such as HTTP.
> >
> > Sanjiva.
> >
> >
> >
> >
>
>
> --
> ============================
> Srinath Perera:
> http://www.cs.indiana.edu/~hperera/
> http://www.bloglines.com/blog/hemapani
>
--
Ajith Ranabahu
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Nicolas Guaneme <ni...@avisortech.com>.
Hello All.
I've a web service working...... I need make a client...... ver
easy...... the problem is that when I make the client I don't include
the digital certificate for consuming the methods of my web service......
if who know to do please send me a example.....
Regards. -
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Srinath Perera <he...@gmail.com>.
Hi Deepal;
When server respond with the reference properties the session works If
and only if client choose to send the reference properties back. But
unlike the cases client manages the session client is under no
obligation to send the reference properties back.
I think we both agree to this so far .. then server can not maintain a
session transparent to the client. There must be a header that is
accepted by the both sides.
I had a chat with Eran, we kind of agreed on this. Ask him
I am skeptical on Implementing things that that work with only Axis2
at both ends. Because the user loose whole point of using web
services, as the service is NOT interoperable. I am ok to have them as
long as they do not get in the way of the architecture or there is a
reasonable hope it would be standardized (e.g. WS-Context I
purposed).But architectural compromises in fervour of Axis2 to Axis2
things are unacceptable (At least to me)
Thanks
Srinath
On 1/21/06, Deepal Jayasinghe <de...@opensource.lk> wrote:
> Hi Srinath and all;
>
> Well , in the very first request you do not need to send anything , since
> server is the one who know about the session and who creates sessions , as
> an example client does not know in which session scope the service has
> deployed. Say that service is deploy in request scope and user send some
> reference parameters in the second request , in that case user does not get
> any session stuff.
>
> Back to the topic :)
> After the second request in axis2 if the service is deploy in soap session
> or application session then server response with serviceGroupID (I really
> like to rename that to sessionID) as reference parameters in the wsa:replyTo
> headers, so its up to the client to send that back to server in the next
> request if he think that he want to manage session. If server wants to
> manage sessions and if user does not send the reference parameters then
> server might throw exceptions.
>
> I am very happy with our current client approach , there user can say
> options.setManageSession(true); , then if server send any reference
> parameters then those will be stored in the ServiceContext and , when user
> send next request those reference parameters will be send automatically.
>
> And if some one wants to manage sessions across several serviceClient he can
> also do that (use case : in the stub case , for each stub it has its own
> ServiceClient in it , so if some one want to manage session across several
> stub , if they are in same service group) , the way is after you creating
> service client you can set its targetEPR , and that will set that as
> ServiceConetxt target EPR , and if you set manage session to true then when
> you send any request to server all those reference parameters will be send
> , and when its get the response back target EPR will be updated to new .
>
>
> Thanks,
> Deepal
> ................................................................
> ~Future is Open~
>
> ----- Original Message -----
> From: "Srinath Perera" <he...@gmail.com>
> To: <ax...@ws.apache.org>
> Sent: Saturday, January 21, 2006 8:29 AM
> Subject: Re: [Axis2] Transport independent Session Mgt [Proposal]
>
>
> Sorry for interrupting, Let me ask a Q
>
> Let me take the inout MEP
> When a server reply to a request reference property approach works!
> because server uses reply to EPR. How can we make it work with the
> request.
>
> How the client know the To EPR, is there any association to WSDL. How
> first message on a interaction get a To EPR? Can you explain how in a
> In-Out MEP, Service Provider (Server) keep a session across number of
> In-Out Invocations?
>
> Thanks
> Srinath
>
> On 1/20/06, Sanjiva Weerawarana <sa...@opensource.lk> wrote:
> > On Fri, 2006-01-20 at 20:10 -0500, Rajith Attapattu wrote:
> > >
> > >
> > > So if a service is deployed in SOAP session scope we do that with
> > > the understanding that any client that uses this service supports
> > > WS-Addressing.
> > >
> > > If above assumption is wrong, How about the client that don'
> > > support WS-Addressing ?? is this scenario something to be concerned or
> > > not??
> >
> > No- WS-Addressing is a core part of the foundation of Web services. If
> > the client doesn't support WS-Addressing then its life is very boring
> > because it can't participate in pretty much anything except message
> > exchanges over a bi-directional protocol such as HTTP.
> >
> > Sanjiva.
> >
> >
> >
> >
>
>
> --
> ============================
> Srinath Perera:
> http://www.cs.indiana.edu/~hperera/
> http://www.bloglines.com/blog/hemapani
>
>
>
--
============================
Srinath Perera:
http://www.cs.indiana.edu/~hperera/
http://www.bloglines.com/blog/hemapani
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Deepal Jayasinghe <de...@opensource.lk>.
Hi Srinath and all;
Well , in the very first request you do not need to send anything , since
server is the one who know about the session and who creates sessions , as
an example client does not know in which session scope the service has
deployed. Say that service is deploy in request scope and user send some
reference parameters in the second request , in that case user does not get
any session stuff.
Back to the topic :)
After the second request in axis2 if the service is deploy in soap session
or application session then server response with serviceGroupID (I really
like to rename that to sessionID) as reference parameters in the wsa:replyTo
headers, so its up to the client to send that back to server in the next
request if he think that he want to manage session. If server wants to
manage sessions and if user does not send the reference parameters then
server might throw exceptions.
I am very happy with our current client approach , there user can say
options.setManageSession(true); , then if server send any reference
parameters then those will be stored in the ServiceContext and , when user
send next request those reference parameters will be send automatically.
And if some one wants to manage sessions across several serviceClient he can
also do that (use case : in the stub case , for each stub it has its own
ServiceClient in it , so if some one want to manage session across several
stub , if they are in same service group) , the way is after you creating
service client you can set its targetEPR , and that will set that as
ServiceConetxt target EPR , and if you set manage session to true then when
you send any request to server all those reference parameters will be send
, and when its get the response back target EPR will be updated to new .
Thanks,
Deepal
................................................................
~Future is Open~
----- Original Message -----
From: "Srinath Perera" <he...@gmail.com>
To: <ax...@ws.apache.org>
Sent: Saturday, January 21, 2006 8:29 AM
Subject: Re: [Axis2] Transport independent Session Mgt [Proposal]
Sorry for interrupting, Let me ask a Q
Let me take the inout MEP
When a server reply to a request reference property approach works!
because server uses reply to EPR. How can we make it work with the
request.
How the client know the To EPR, is there any association to WSDL. How
first message on a interaction get a To EPR? Can you explain how in a
In-Out MEP, Service Provider (Server) keep a session across number of
In-Out Invocations?
Thanks
Srinath
On 1/20/06, Sanjiva Weerawarana <sa...@opensource.lk> wrote:
> On Fri, 2006-01-20 at 20:10 -0500, Rajith Attapattu wrote:
> >
> >
> > So if a service is deployed in SOAP session scope we do that with
> > the understanding that any client that uses this service supports
> > WS-Addressing.
> >
> > If above assumption is wrong, How about the client that don'
> > support WS-Addressing ?? is this scenario something to be concerned or
> > not??
>
> No- WS-Addressing is a core part of the foundation of Web services. If
> the client doesn't support WS-Addressing then its life is very boring
> because it can't participate in pretty much anything except message
> exchanges over a bi-directional protocol such as HTTP.
>
> Sanjiva.
>
>
>
>
--
============================
Srinath Perera:
http://www.cs.indiana.edu/~hperera/
http://www.bloglines.com/blog/hemapani
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Srinath Perera <he...@gmail.com>.
Sorry for interrupting, Let me ask a Q
Let me take the inout MEP
When a server reply to a request reference property approach works!
because server uses reply to EPR. How can we make it work with the
request.
How the client know the To EPR, is there any association to WSDL. How
first message on a interaction get a To EPR? Can you explain how in a
In-Out MEP, Service Provider (Server) keep a session across number of
In-Out Invocations?
Thanks
Srinath
On 1/20/06, Sanjiva Weerawarana <sa...@opensource.lk> wrote:
> On Fri, 2006-01-20 at 20:10 -0500, Rajith Attapattu wrote:
> >
> >
> > So if a service is deployed in SOAP session scope we do that with
> > the understanding that any client that uses this service supports
> > WS-Addressing.
> >
> > If above assumption is wrong, How about the client that don'
> > support WS-Addressing ?? is this scenario something to be concerned or
> > not??
>
> No- WS-Addressing is a core part of the foundation of Web services. If
> the client doesn't support WS-Addressing then its life is very boring
> because it can't participate in pretty much anything except message
> exchanges over a bi-directional protocol such as HTTP.
>
> Sanjiva.
>
>
>
>
--
============================
Srinath Perera:
http://www.cs.indiana.edu/~hperera/
http://www.bloglines.com/blog/hemapani
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Sanjiva Weerawarana <sa...@opensource.lk>.
On Fri, 2006-01-20 at 20:10 -0500, Rajith Attapattu wrote:
>
>
> So if a service is deployed in SOAP session scope we do that with
> the understanding that any client that uses this service supports
> WS-Addressing.
>
> If above assumption is wrong, How about the client that don'
> support WS-Addressing ?? is this scenario something to be concerned or
> not??
No- WS-Addressing is a core part of the foundation of Web services. If
the client doesn't support WS-Addressing then its life is very boring
because it can't participate in pretty much anything except message
exchanges over a bi-directional protocol such as HTTP.
Sanjiva.
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Rajith Attapattu <ra...@gmail.com>.
On 1/20/06, Sanjiva Weerawarana <sa...@opensource.lk> wrote:
>
> On Fri, 2006-01-20 at 11:03 -0500, Rajith Attapattu wrote:
>
>
> > Well, For Axis2 vs Axis2 scenario this is true. However I feel that
> > we should be thinking of non-Axis2 clients as well in which case they
> > "have" to know the specifc id to be sent in the SOAP header.
> >
> > This is exactly my concern as well. How are we going to handle this
> > scenario.
>
> No no this is incorrect. Reference parameters such as the service group
> ID are totally opaque to the client side. *Any* client which supports
> WS-Addressing will do the right thing.
>
> Sanjiva, you just solved the biggest concern I had about impacting
> existing client code and being interoperable !!
So if a service is deployed in SOAP session scope we do that with the
understanding that any client that uses this service supports WS-Addressing.
If above assumption is wrong, How about the client that don' support
WS-Addressing ?? is this scenario something to be concerned or not??
Rajith
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Sanjiva Weerawarana <sa...@opensource.lk>.
On Fri, 2006-01-20 at 11:03 -0500, Rajith Attapattu wrote:
> Well, For Axis2 vs Axis2 scenario this is true. However I feel that
> we should be thinking of non-Axis2 clients as well in which case they
> "have" to know the specifc id to be sent in the SOAP header.
>
> This is exactly my concern as well. How are we going to handle this
> scenario.
No no this is incorrect. Reference parameters such as the service group
ID are totally opaque to the client side. *Any* client which supports
WS-Addressing will do the right thing.
Sanjiva.
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Rajith Attapattu <ra...@gmail.com>.
Hi Eran,
Point well taken :-)
I agree with that, things should be done in the way the community is used to
and also in an acceptable manner.
Thanks for discussing it. I hope u didn't misunderstand me.
>>Maximum we can do is to put a link to wiki from the main site, preferrable
in the archi guide or TODO list in the user guide.
This is a good idea :-) !!!
>>So shall we first start by setting this up in the wiki ?
I will set up the thing and send an email to dev-list. More than anything
what I really want is participation.
There is no point in me doing something thats not useful to the overall
goals of axis or something that is not consistant with the current axis2
architecture.
So this is where u guys will have to help me with flushing out the proposal.
One more concern !!!
Since I will work on a sandbox for the prototype I fear the following.
a) That what I am doing might not be peer reviewed enough.My fear is I might
move too far without realizing I am making a mistake !!!
b) definitely can't submit patches either since it's work in progress and it
might break other stuff.
So how about this?
If I discuss the design or sometimes code level problems in the dev-list is
that good enough? Sometimes bcos of the time difference it gets a bit
frustrating too :-)
Is this how u guys do this type of thing?.
I can try the axis-IRC-chat as well.
Again thanks for the interest and disscussion this is definitely helpful.
Rajith.
On 1/20/06, Eran Chinthaka <ch...@opensource.lk> wrote:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi Rajith,
>
>
> Rajith Attapattu wrote:
>
> >
> > I was thinking about a news item or an article in the main site
> > that talks about Axis2 clustering in general without tieing it to
> > any technology/design or anything like that. (Definietly not a
> > concrete proposal). So defientely not Axis2 POV regarding
> > clustering. I think we are a long way from that :)
> >
> > The article would say that we are interested/looking into the
> > problem, the nature of the problem and the challengers we are
> > facing. The problem regarding session would be one problem listed
> > there.
> >
> > This would be like an advertisement to generate interest and drag
> > interested parties to look into more of it.
> >
> > Another point is any company/organization looking at Axis2 as a
> > potential development platform will atleast get the idea that we
> > are thinking about and important problem that will be a very big
> > concern for them during deployment time. This is something in the
> > future, but we are giving people an assurance that we are going to
> > work on there concern.
> >
> > We could have a link from that doc to the wiki to show the
> > following
> >
> > a) The open ended proposal about Session Mgt b) More Axis2 specific
> > details surronding the problem c) A proposal on the clustering
> > prototype I am working.
> >
> > My concern about not having something in the main site is that the
> > information will be inside Wiki with not much attention. And I
> > endup doing the protoype without much input. Remember two heads are
> > better than one, so definielty more input I get the better the
> > prototype will be.
> >
> > Did I do a resonable job explaining it?? How does it sound?
>
> I don't think so.
>
> The practise in our community is that when we are putting a proposal
> for comments or discussions we set that up in the wiki and discuss. I
> strongly feel that when you put sth in the site, that is Axis2 POV for
> outsiders, which is actually not. I can not understand why you want to
> put that doc in the site itself :-) .
> And when you are really doing the work, people in the dev list and
> user list will pop up and comment for sure, no matter where u put the
> proposal.
> So I prefer if you can put that in the wiki, at least for now, send a
> mail to axis-dev (and to axis-user, if you want.). Maximum we can do
> is to put a link to wiki from the main site, preferrable in the archi
> guide or TODO list in the user guide.
>
> So shall we first start by setting this up in the wiki ?
>
> Thanks,
> Chinthaka
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.2 (MingW32)
>
> iD8DBQFD0ReWjON2uBzUhh8RAhS/AJ48PifE7seZruUgs9zZ/Ml/4JsysACgj18O
> taQQvno5ZZciWFAdnSmQyVo=
> =4Lbq
> -----END PGP SIGNATURE-----
>
>
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Eran Chinthaka <ch...@opensource.lk>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Rajith,
Rajith Attapattu wrote:
>
> I was thinking about a news item or an article in the main site
> that talks about Axis2 clustering in general without tieing it to
> any technology/design or anything like that. (Definietly not a
> concrete proposal). So defientely not Axis2 POV regarding
> clustering. I think we are a long way from that :)
>
> The article would say that we are interested/looking into the
> problem, the nature of the problem and the challengers we are
> facing. The problem regarding session would be one problem listed
> there.
>
> This would be like an advertisement to generate interest and drag
> interested parties to look into more of it.
>
> Another point is any company/organization looking at Axis2 as a
> potential development platform will atleast get the idea that we
> are thinking about and important problem that will be a very big
> concern for them during deployment time. This is something in the
> future, but we are giving people an assurance that we are going to
> work on there concern.
>
> We could have a link from that doc to the wiki to show the
> following
>
> a) The open ended proposal about Session Mgt b) More Axis2 specific
> details surronding the problem c) A proposal on the clustering
> prototype I am working.
>
> My concern about not having something in the main site is that the
> information will be inside Wiki with not much attention. And I
> endup doing the protoype without much input. Remember two heads are
> better than one, so definielty more input I get the better the
> prototype will be.
>
> Did I do a resonable job explaining it?? How does it sound?
I don't think so.
The practise in our community is that when we are putting a proposal
for comments or discussions we set that up in the wiki and discuss. I
strongly feel that when you put sth in the site, that is Axis2 POV for
outsiders, which is actually not. I can not understand why you want to
put that doc in the site itself :-) .
And when you are really doing the work, people in the dev list and
user list will pop up and comment for sure, no matter where u put the
proposal.
So I prefer if you can put that in the wiki, at least for now, send a
mail to axis-dev (and to axis-user, if you want.). Maximum we can do
is to put a link to wiki from the main site, preferrable in the archi
guide or TODO list in the user guide.
So shall we first start by setting this up in the wiki ?
Thanks,
Chinthaka
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (MingW32)
iD8DBQFD0ReWjON2uBzUhh8RAhS/AJ48PifE7seZruUgs9zZ/Ml/4JsysACgj18O
taQQvno5ZZciWFAdnSmQyVo=
=4Lbq
-----END PGP SIGNATURE-----
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Rajith Attapattu <ra...@gmail.com>.
See comments inline
On 1/19/06, Ajith Ranabahu <aj...@gmail.com> wrote:
> Hi,
>
>
> Client will not know this. With the changes Deepal is doing, client
> > just need to say options.maintainSession(true). Axis2 will handle it
> > for you.
>
>
> Well, For Axis2 vs Axis2 scenario this is true. However I feel that we
> should be thinking of non-Axis2 clients as well in which case they "have" to
> know the specifc id to be sent in the SOAP header.
>
This is exactly my concern as well. How are we going to handle this
scenario.
> I think its unfair to put a document directly in to the site, without
> > everyone is given a chance to review it. Once you put the doc in the
> > site, it represents the Axis2 POV. So anyone who is interested must be
> > given a chance to look at it and change if needed.
>
>
> I guess what Chinthaka meant to say was that a proposal is not suitable
> in the Axis2 main site (ws.apache.org/axis2) propably due to its immutable
> nature :). Wiki is definitely the place for such a proposal and you are
> welcome to post it in the wiki.
>
>
> >
> >
>
> I total agree with you point there. However let me explain it fully. I did
> a poor job last time, my bad :-( .
I was thinking about a news item or an article in the main site that talks
about Axis2 clustering in general without tieing it to any technology/design
or anything like that. (Definietly not a concrete proposal). So defientely
not Axis2 POV regarding clustering. I think we are a long way from that :)
The article would say that we are interested/looking into the problem, the
nature of the problem and the challengers we are facing. The problem
regarding session would be one problem listed there.
This would be like an advertisement to generate interest and drag interested
parties to look into more of it.
Another point is any company/organization looking at Axis2 as a potential
development platform will atleast get the idea that we are thinking about
and important problem that will be a very big concern for them during
deployment time. This is something in the future, but we are giving people
an assurance that we are going to work on there concern.
We could have a link from that doc to the wiki to show the following
a) The open ended proposal about Session Mgt
b) More Axis2 specific details surronding the problem
c) A proposal on the clustering prototype I am working.
My concern about not having something in the main site is that the
information will be inside Wiki with not much attention. And I endup doing
the protoype without much input. Remember two heads are better than one, so
definielty more input I get the better the prototype will be.
Did I do a resonable job explaining it?? How does it sound?
Regards,
Rajith.
> --
> Ajith Ranabahu
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Ajith Ranabahu <aj...@gmail.com>.
Hi,
Client will not know this. With the changes Deepal is doing, client
> just need to say options.maintainSession(true). Axis2 will handle it
> for you.
Well, For Axis2 vs Axis2 scenario this is true. However I feel that we
should be thinking of non-Axis2 clients as well in which case they "have" to
know the specifc id to be sent in the SOAP header.
I think its unfair to put a document directly in to the site, without
> everyone is given a chance to review it. Once you put the doc in the
> site, it represents the Axis2 POV. So anyone who is interested must be
> given a chance to look at it and change if needed.
I guess what Chinthaka meant to say was that a proposal is not suitable in
the Axis2 main site (ws.apache.org/axis2) propably due to its immutable
nature :). Wiki is definitely the place for such a proposal and you are
welcome to post it in the wiki.
>
--
Ajith Ranabahu
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Eran Chinthaka <ch...@opensource.lk>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Rajith,
Rajith Attapattu wrote:
> Eran,
>
> Thanks a lot for the interest.
hmm, anything abt Axis2, we are there. ;-)
>
>>> We have the SOAP session which is managed via service group
>>> context id and application scopes
>
> Yes I have a identified the SOAP session option based on input from
> Deepal & Srinath. But they have raised concerns about usign the
> service grp context ids
I think the problem is with the name we gave to that id. Name it as
sessionID or whatever.
> and also about the client involement wrt to initiating the SOAP
> header using to identify the SOAP session.
Client will not know this. With the changes Deepal is doing, client
just need to say options.maintainSession(true). Axis2 will handle it
for you.
>
> Btw I am not a SOAP expert (ramping up using Sanjiva's book :) ),
> so I may have not understood the implications of SOAP header fully.
>
>
> But I do belive that SOAP session is the way to go to provide an
> independent session mgt impl, but I need more help and inpput to
> figure out the concerns service grp context ids and the client
> code impact.
>
>>> FYI : Chamikara wrote a nice Calculator example using SOAP
>>> session, w/o depending on transport session.
>
> Can u get Chamikara to have a go at this proposal based on his
> experiance with SOAP session
>
> Btw where can I get access to this example??
>
>>> BTW, proposal seems to have understood the problem. can you put
>>> this up in the wiki as well.
>
> I am working on a doc regarding Scalability & HA wrt to Axis2, I
> was thinking about attaching something about this there as well. I
> was thinking about putting this doc under documentation within the
> main site. Sanjiva things it will attract more attention !!
>
> However the proposal can (rather should) be added to the wiki so
> everybody can have a go at it. Can provide link to the
> wiki#proposal from the clustering doc from the main site.
I think its unfair to put a document directly in to the site, without
everyone is given a chance to review it. Once you put the doc in the
site, it represents the Axis2 POV. So anyone who is interested must be
given a chance to look at it and change if needed.
- -- Chinthaka
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (MingW32)
iD8DBQFD0FdtjON2uBzUhh8RAhLUAJ99M4D3uwvjnaNSD6x+w4qONKmQwwCfep0v
XJ1AQqBYUtRC9a2ZMhfo9wM=
=Me8Y
-----END PGP SIGNATURE-----
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Eran Chinthaka <ch...@opensource.lk>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Rajith Attapattu wrote:
> Eran and Chamikara,
>
> I located the example and had a looked at it. Good example indeed
> and so far has given me most understanding about situation.
>
> *You are adding a key/value pair to the SrvGrpCtx as you would put
> in a session object for ex HttpSession* **
> *msgContext.getServiceGroupContext().setProperty(
> Constants.CALCULATOR_PREVIOUS_KEY,Integer.toString(result));
>
> next you retrive it a different method within the same service or
> different service like u would do from a session object.* **
> *String previousStr = (String) sgc.getProperty(
> Constants.CALCULATOR_PREVIOUS_KEY);*
>
> Ok, so you treat SrvGrpCtx as the session object to pass key/value
> pairs across multiple invocations within a ServiceGroup.
>
> The following 3 big questions will figure out whether we need to
> look beyond ServiceGroupContexts for session mgt or not?
>
> 1. Now is this is limited to Services within a ServiceGroup, isnt
> it? for example if we have to access a service outside of this
> ServiceGroupContext the notion of a session will fail, am I
> correct?
This is to maintain session within a group. See the reason for having
SG is to group the related services. If you are trying to access a
service outside the SG within the same session, then there is some
problem in grouping of services.
I'm not telling that SGC is enough for all the sessions, but IMO it
serves the purpose which it was created. ;-)
>
> 2. How is this ServiceGroupContext lifecycle managed with respect
> to scope?? If session scope will it be removed from the
> ConfigurationCtx after a session is ended (removed by the client
> for ex. logout service ) OR timed out (removed without the
> involement of any service, but by the SessionManager as a
> housekeeping function)?
We time out. Well we don;t have the notion of termination service so
that once invoked the session goes away.
>
> 3. Is there a possibility of cross-contamination within the
> ServiceGroupContext across two simultaneous client sessions?
Not at all. At least I hope that can not be done.
- -- Chinthaka
>
> Regards,
>
> Rajith.
>
> On 1/19/06, Rajith Attapattu <ra...@gmail.com> wrote:
>
>> Eran,
>>
>> Thanks a lot for the interest.
>>
>>>> We have the SOAP session which is managed via service group
>>>> context id and application scopes
>>
>> Yes I have a identified the SOAP session option based on input
>> from Deepal & Srinath. But they have raised concerns about usign
>> the service grp context ids and also about the client involement
>> wrt to initiating the SOAP header using to identify the SOAP
>> session.
>>
>> Btw I am not a SOAP expert (ramping up using Sanjiva's book :) ),
>> so I may have not understood the implications of SOAP header
>> fully.
>>
>> But I do belive that SOAP session is the way to go to provide an
>> independent session mgt impl, but I need more help and inpput to
>> figure out the concerns service grp context ids and the client
>> code impact.
>>
>>>> FYI : Chamikara wrote a nice Calculator example using SOAP
>>>> session, w/o depending on transport session.
>>
>> Can u get Chamikara to have a go at this proposal based on his
>> experiance with SOAP session
>>
>> Btw where can I get access to this example??
>>
>>>> BTW, proposal seems to have understood the problem. can you
>>>> put this up in the wiki as well.
>>
>> I am working on a doc regarding Scalability & HA wrt to Axis2, I
>> was thinking about attaching something about this there as well.
>> I was thinking about putting this doc under documentation within
>> the main site. Sanjiva things it will attract more attention !!
>>
>> However the proposal can (rather should) be added to the wiki so
>> everybody can have a go at it. Can provide link to the
>> wiki#proposal from the clustering doc from the main site.
>>
>> Hope we will get a prototype also ;-) . I am actually working on
>> a prototype on my Sanbox and will keep u updated on the progress.
>> I am actually trying to provide clustering support to Axis2
>> using WADI, ActiveCluster ..etc (still evaluating), However I
>> realized I first have to sort out the session problem, hence the
>> proposal
>>
>> Regards,
>>
>> Rajith.
>>
>>
>> On 1/19/06, Eran Chinthaka <ch...@opensource.lk> wrote:
>>
> Hi Rajith,
>
> I agree with all except for this.
>
> Rajith Attapattu wrote:
>
>
>> 2. The current Axis2 has no clear notion of a session. (Serveral
>> ppl expressed this concern
>
>> Currently two concepts exist. a) HttpSession based on cookies, if
>> the Transport is http (the most popular)
>
>> b) SOAP header for RM & Secure Conversations
>
> We do have a notion of sessions which goes beyong transport
> sessions. We have the SOAP session which is managed via service
> group context id and application scopes. Please correct me if I am
> wrong. I agree that we may not have a scalable and distributable
> session management system, but for the time being we have session
> management which goes a little beyond transport session. FYI :
> Chamikara wrote a nice Calculator example using SOAP session, w/o
> depending on transport session.
>
> BTW, proposal seems to have understood the problem. can you put
> this up in the wiki as well. Hope we will get a prototype also ;-)
> .
>
> -- Chinthaka
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (MingW32)
iD8DBQFD0FYnjON2uBzUhh8RAozYAKCuB15+WtHi8f4X4RId0I1+vxIlLwCgp94S
ENMgeXgIfPg4VUgPZ2oJESY=
=IoR/
-----END PGP SIGNATURE-----
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Rajith Attapattu <ra...@gmail.com>.
Eran and Chamikara,
I located the example and had a looked at it. Good example indeed and so far
has given me most understanding about situation.
*You are adding a key/value pair to the SrvGrpCtx as you would put in a
session object for ex HttpSession*
**
*msgContext.getServiceGroupContext().setProperty(
Constants.CALCULATOR_PREVIOUS_KEY,Integer.toString(result));
next you retrive it a different method within the same service or different
service like u would do from a session object.*
**
*String previousStr = (String) sgc.getProperty(
Constants.CALCULATOR_PREVIOUS_KEY);*
Ok, so you treat SrvGrpCtx as the session object to pass key/value pairs
across multiple invocations within a ServiceGroup.
The following 3 big questions will figure out whether we need to look beyond
ServiceGroupContexts for session mgt or not?
1. Now is this is limited to Services within a ServiceGroup, isnt it? for
example if we have to access a service outside of this ServiceGroupContext
the notion of a session will fail, am I correct?
2. How is this ServiceGroupContext lifecycle managed with respect to scope??
If session scope will it be removed from the ConfigurationCtx after a
session is ended (removed by the client for ex. logout service ) OR timed
out (removed without the involement of any service, but by the
SessionManager as a housekeeping function)?
3. Is there a possibility of cross-contamination within the
ServiceGroupContext across two simultaneous client sessions?
Regards,
Rajith.
On 1/19/06, Rajith Attapattu <ra...@gmail.com> wrote:
>
> Eran,
>
> Thanks a lot for the interest.
>
> >>We have the SOAP session which is managed via service group context id
> >>and application scopes
> Yes I have a identified the SOAP session option based on input from Deepal
> & Srinath. But they have raised concerns about usign the service grp context
> ids and also about the client involement wrt to initiating the SOAP header
> using to identify the SOAP session.
>
> Btw I am not a SOAP expert (ramping up using Sanjiva's book :) ), so I may
> have not understood the implications of SOAP header fully.
>
> But I do belive that SOAP session is the way to go to provide an
> independent session mgt impl, but I need more help and inpput to figure out
> the concerns service grp context ids and the client code impact.
>
> >>FYI : Chamikara wrote a nice Calculator example using SOAP session,
> >>w/o depending on transport session.
> Can u get Chamikara to have a go at this proposal based on his experiance
> with SOAP session
>
> Btw where can I get access to this example??
>
> >>BTW, proposal seems to have understood the problem. can you put this
> >>up in the wiki as well.
> I am working on a doc regarding Scalability & HA wrt to Axis2, I was
> thinking about attaching something about this there as well.
> I was thinking about putting this doc under documentation within the main
> site. Sanjiva things it will attract more attention !!
>
> However the proposal can (rather should) be added to the wiki so everybody
> can have a go at it. Can provide link to the wiki#proposal from the
> clustering doc from the main site.
>
> Hope we will get a prototype also ;-) .
> I am actually working on a prototype on my Sanbox and will keep u updated
> on the progress.
> I am actually trying to provide clustering support to Axis2 using WADI,
> ActiveCluster ..etc (still evaluating),
> However I realized I first have to sort out the session problem, hence the
> proposal
>
> Regards,
>
> Rajith.
>
>
> On 1/19/06, Eran Chinthaka <ch...@opensource.lk> wrote:
> >
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> >
> > Hi Rajith,
> >
> > I agree with all except for this.
> >
> > Rajith Attapattu wrote:
> >
> > >
> > >
> > > 2. The current Axis2 has no clear notion of a session. (Serveral
> > > ppl expressed this concern
> >
> > > Currently two concepts exist. a) HttpSession based on cookies, if
> > > the Transport is http (the most popular)
> > >
> > > b) SOAP header for RM & Secure Conversations
> > >
> > We do have a notion of sessions which goes beyong transport sessions.
> > We have the SOAP session which is managed via service group context id
> > and application scopes. Please correct me if I am wrong.
> > I agree that we may not have a scalable and distributable session
> > management system, but for the time being we have session management
> > which goes a little beyond transport session.
> > FYI : Chamikara wrote a nice Calculator example using SOAP session,
> > w/o depending on transport session.
> >
> > BTW, proposal seems to have understood the problem. can you put this
> > up in the wiki as well.
> > Hope we will get a prototype also ;-) .
> >
> > - -- Chinthaka
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v1.4.2 (MingW32)
> >
> > iD8DBQFDz7kFjON2uBzUhh8RApmGAJ9IoylogS0Eauzpo2axlbmffY5mqACfS3T0
> > mlPrJNPuRH2EwrlUpEtaSXE=
> > =pyFN
> > -----END PGP SIGNATURE-----
> >
> >
>
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Rajith Attapattu <ra...@gmail.com>.
Eran,
Thanks a lot for the interest.
>>We have the SOAP session which is managed via service group context id
>>and application scopes
Yes I have a identified the SOAP session option based on input from Deepal &
Srinath. But they have raised concerns about usign the service grp context
ids and also about the client involement wrt to initiating the SOAP header
using to identify the SOAP session.
Btw I am not a SOAP expert (ramping up using Sanjiva's book :) ), so I may
have not understood the implications of SOAP header fully.
But I do belive that SOAP session is the way to go to provide an independent
session mgt impl, but I need more help and inpput to figure out the
concerns service grp context ids and the client code impact.
>>FYI : Chamikara wrote a nice Calculator example using SOAP session,
>>w/o depending on transport session.
Can u get Chamikara to have a go at this proposal based on his experiance
with SOAP session
Btw where can I get access to this example??
>>BTW, proposal seems to have understood the problem. can you put this
>>up in the wiki as well.
I am working on a doc regarding Scalability & HA wrt to Axis2, I was
thinking about attaching something about this there as well.
I was thinking about putting this doc under documentation within the main
site. Sanjiva things it will attract more attention !!
However the proposal can (rather should) be added to the wiki so everybody
can have a go at it. Can provide link to the wiki#proposal from the
clustering doc from the main site.
Hope we will get a prototype also ;-) .
I am actually working on a prototype on my Sanbox and will keep u updated on
the progress.
I am actually trying to provide clustering support to Axis2 using WADI,
ActiveCluster ..etc (still evaluating),
However I realized I first have to sort out the session problem, hence the
proposal
Regards,
Rajith.
On 1/19/06, Eran Chinthaka <ch...@opensource.lk> wrote:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi Rajith,
>
> I agree with all except for this.
>
> Rajith Attapattu wrote:
>
> >
> >
> > 2. The current Axis2 has no clear notion of a session. (Serveral
> > ppl expressed this concern
>
> > Currently two concepts exist. a) HttpSession based on cookies, if
> > the Transport is http (the most popular)
> >
> > b) SOAP header for RM & Secure Conversations
> >
> We do have a notion of sessions which goes beyong transport sessions.
> We have the SOAP session which is managed via service group context id
> and application scopes. Please correct me if I am wrong.
> I agree that we may not have a scalable and distributable session
> management system, but for the time being we have session management
> which goes a little beyond transport session.
> FYI : Chamikara wrote a nice Calculator example using SOAP session,
> w/o depending on transport session.
>
> BTW, proposal seems to have understood the problem. can you put this
> up in the wiki as well.
> Hope we will get a prototype also ;-) .
>
> - -- Chinthaka
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.2 (MingW32)
>
> iD8DBQFDz7kFjON2uBzUhh8RApmGAJ9IoylogS0Eauzpo2axlbmffY5mqACfS3T0
> mlPrJNPuRH2EwrlUpEtaSXE=
> =pyFN
> -----END PGP SIGNATURE-----
>
>
Re: [Axis2] Transport independent Session Mgt [Proposal]
Posted by Eran Chinthaka <ch...@opensource.lk>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Rajith,
I agree with all except for this.
Rajith Attapattu wrote:
>
>
> 2. The current Axis2 has no clear notion of a session. (Serveral
> ppl expressed this concern
> Currently two concepts exist. a) HttpSession based on cookies, if
> the Transport is http (the most popular)
>
> b) SOAP header for RM & Secure Conversations
>
We do have a notion of sessions which goes beyong transport sessions.
We have the SOAP session which is managed via service group context id
and application scopes. Please correct me if I am wrong.
I agree that we may not have a scalable and distributable session
management system, but for the time being we have session management
which goes a little beyond transport session.
FYI : Chamikara wrote a nice Calculator example using SOAP session,
w/o depending on transport session.
BTW, proposal seems to have understood the problem. can you put this
up in the wiki as well.
Hope we will get a prototype also ;-) .
- -- Chinthaka
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (MingW32)
iD8DBQFDz7kFjON2uBzUhh8RApmGAJ9IoylogS0Eauzpo2axlbmffY5mqACfS3T0
mlPrJNPuRH2EwrlUpEtaSXE=
=pyFN
-----END PGP SIGNATURE-----