I think some where(may be in the action class association with the action 
/test.do) you are creating new session each time for each request. Most 
possible mistake could be using

Request.getSession(true);

See below documentation from Servlet Specifications
**********************************************************************************************************************************************
getSession()
public HttpSession getSession()
        Returns the current session associated with this request, or if the 
request does not have a session, creates one.
        Returns: the HttpSession associated with this request
See Also: getSession(boolean)

getSession(boolean)
public HttpSession getSession(boolean create)
        Returns the current HttpSession associated with this request or, if if 
there is no current session and create is true, returns a new session. If 
create is false and    the request has no valid HttpSession, this method 
returns null.

To make sure the session is properly maintained, you must call this method 
before the response is committed. If the container is using cookies to maintain 
session integrity and is asked to create a new session when the response is 
committed, an IllegalStateException is thrown.

Parameters:
<code>true</code> - to create a new session for this request if necessary; 
false to return null if there’s no current session Returns: the HttpSession 
associated with this request or null if create is false and the request has no 
valid session
See Also: getSession() 
**********************************************************************************************************************************************

Chandra
-----Original Message-----
From: Chan Michael [mailto:[EMAIL PROTECTED] 
Sent: Monday, April 24, 2006 2:48 PM
To: user@struts.apache.org
Subject: Session without cookies

Hi All,

I have been searching for hours and still cannot find any useful info. Hope you 
can help.

I am building a Struts app. (Struts 1.2.4 + Tomcat 5.5
+ Apache 2.0.55 + Spring 1.2.6) and want to use
session without
enabling cookies. I use <html:link> to create links so ;jsessionid is appended 
to the end. Fine. The problem I have is every time I access a page, a new 
session id is created so essentially everything stored in session is lost. Here 
is some output from my test action,
test.do:

test.do
=============================================
HttpSession session = request.getSession(); System.out.println("Is session new? 
" + session.isNew()); System.out.println("Session id: " + session.getId());

First access
=============================================
Is session new? true
Session id: B9F9E135DCBAC90AB2B5AEBCE901FAA5

Second access
=============================================
Is sesssion new? false
Session id: 8CCE7A388E76C0F56016E8F41E29E0E5

The session is not new but the id is different...I already set in Tomcat 
server.xml

<Context path="/myApp" cookies="false"...>

What am I missing??

Thanks in advance.

Michael

_______________________________________
 YM - �x����息
 就算你�]有上�W,你的朋友仍可以留下��息�o你,��你上�W�r就能立即看到,任何�f��都�幼呤А�
 http://messenger.yahoo.com.hk

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to