I am trying to monitor user session and alert user that the session is about to expire. I do have client side solutions however I am wondering how can I inquire the Httpsession.getLastAccessedTime() (or similar ) method without renewing user session stats. In essence every time I access this method through servlet or jsp, the session is automatically extended and this, obviously, defeats the purpose of the session timeout tracking.
Thank you in advance for your help.
Author and all-around good cowpoke
Joined: Mar 22, 2000
As you have already realized, you can't do it with the built-in session timeout mechanism.
Therefore you will need to write a separate mechanism which only resets your custom timeout counter when the user accesses one of your custom application functions.
See the java.lang.System.currentTimeMillis method to get a timestamp.
Nothing on the server side can do this, since the server side only communicates with the user when the user sends a request. And since you want to communicate with the user without receiving a request, you have to look at client-side solutions.