Hi,

If I got your Problem now, this might help you:

i.  you could use the ContextPropagation Feature of Apache Soap to access
the HttpSession-Object if you use the JavaProvider of AP-Soap.
    If you add a SOAPContext Object as first Parameter in the signature of
your java-method, a 'SOAPContext' Object is passed to your class.
    
    .mymethod(SOAPContext inContext,String inString)

    This SOAPContext object gives you access to the
HttpSession,HttpRequest,HttpResponse,... (see java doc for details ....)
        
    drawback: your classes get bound to the Apache Soap Implementation .....

    This presupposes that you tracked your HttpSession.

ii. A point I was not right about in my reply:
    In detail you do not need to use the same Call Instance for
session-tracking, but the same SOAPHTTPConnection Instance,
    which you can pass to different Call objects. 

iii.A question only for my understanding: 
    Do you use a Servlet for authentication or a soap service ?

regards

ChrisC




Hi,
        How can we restrict the client to use the same 'Call' Object over
and over for invoking different SOAP services that are deployed on a web
server? Is it by resetting the targetObjectURI and the method & parameters
of that 'Call' Object? 

If this is the case then it is limitation to what
SOAP can do under session scope. This means that the 'Call' Object is tied
to the SOAP Service that is of scope 'session' and not the client itself.
Well any ways this is not my problem child. My problem is something like
this.
        When a User logs in, a Servlet handles the authentication and
creates and EJB Object that is stored in the session object for that user.
I need to access and invoke a business method on this EJB object some time
later when the user decides to save his work to the database. My question is
how do I get the handle to this EJB Object, that is stored in the session
object, from my SAOP Service. Is there any way to access the session object
that was originally created by the servlet during user authentication from a
SOAP Service? 


Christian -- Thanks for the reply.

~Venkat

-----Original Message-----
From: Christian Cerny [mailto:[EMAIL PROTECTED]]
Sent: Monday, July 30, 2001 1:40 AM
To: '[EMAIL PROTECTED]'
Subject: RE: Session Tracking question.


Hi,

Apache Soap 2.2 is able to track a HttpSession. 
As long as you are working with the same Call-object on the client-side your
HttpSession is tracked using cookies. (this behavior is "on" per default)
Futhermore the value of the "scope" Parameter in your DeploymentDescripter
for your Class should be "session" for getting session-tracking to work.
If you set it up like this all requests, done by the >same< client-side Call
object, invoke methods on the >same< Object on the Server.
So your are able to store your App-Session as class-member.

btw: 
It's working fine for me in an ap-soap <-> ap-soap scenario. 
But i see quite a lot of issues getting this to work in an interop-scenario
with other SOAP-Client Implementations.

regards

ChrisC



-----Original Message-----
From: venkat reddy [mailto:[EMAIL PROTECTED]]
Sent: Friday, July 27, 2001 7:58 PM
To: '[EMAIL PROTECTED]'
Subject: Session Tracking question.


Hi All,
        I've tried looking up the archives for session tracking but could
not find any. I am currently using SOAP services that are request based. Now
I need to use them on a per session base and access the session object for
a particular user request. My scenario is something like this. 
        At use authentication I create a Session Bean an place it in the
Session Object for that user. Now I need to access this session object
depending on some actions performed by the user on the client side. The
client sends the request for the soap service that has to handle the data it
sends and this soap service has to access the session bean that was created
during the authentication process for that user. 
        Can any one suggest/discuss something here? Please feel free to ask
any questions.

~Venkat

Reply via email to