Dave is correct. In fact, that's not a kludge but a pretty official way of doing things.
http://forums.sun.com/thread.jspa?forumID=427&threadID=523120 Paul On Tue, Nov 24, 2009 at 12:38 PM, Kawczynski, David <david_kawczyn...@merck.com> wrote: > How about this kludge: > > the filter checks session isNew() > and checks the referring domain -- if it's null or > not your own domain, send them to the login screen. > Otherwise send them to the session timeout screen. > > >> -----Original Message----- >> From: Himstedt, Maik (EXTERN: T-Systems on) >> [mailto:extern.maik.himst...@volkswagen.de] >> Sent: Tuesday, November 24, 2009 11:29 AM >> To: user@struts.apache.org >> Subject: Dealing / determining lost session in Struts application >> >> Hi, >> >> I'm tasked with killing a bug related to session management >> and Struts 1.3.10 in a rather conventional JEE web >> application. The problem is that after the session times out, >> the application throws a rather ugly exception, something like: >> >> 2009-11-04 11:45:46,803 ERROR >> de.mypackage.ipad.util.hibernate.HibernateFilter - An >> Exception occured. >> javax.servlet.ServletException: BeanUtils.populate >> at >> org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1254) >> at >> org.apache.struts.action.RequestProcessor.processPopulate(Requ >> estProcessor.java:821) >> at >> org.apache.struts.action.RequestProcessor.process(RequestProce >> ssor.java:254) >> at >> org.apache.struts.action.ActionServlet.process(ActionServlet.j >> ava:1482) >> at... >> >> What I understand is that after the session is gone, the >> internal Struts processing tries to put some data into >> session-stored objects. It does so with help of Apache >> BeanUtils and I'm aware that this will crash, of course. My >> goal is to present a page with a clean message that the >> session is gone and the user has to re-enter the application. >> Catching the ServletException at application level (via >> web.xml) is a bad idea because of the rather generic >> exception thrown. My current take is that I need a filter >> which is called before the Struts servlet is called and the >> filter checks the session beforehand via standard Java API >> (isNew()). For a new session the user is redirected to a >> descriptive error page. This might work if the user is >> already in the application and takes a break, but isNew() >> will return true at the first entry as well which is >> nonsense, of course. >> >> What is the best practice to deal with this problem for a >> Struts 1.3 application? Or is this not a standard problem and >> the cause might be something different? >> >> >> Mit freundlichen Grüßen >> >> >> Maik Himstedt >> >> T-Systems on site services GmbH >> Procurement Systems >> Telefon/phone: +49-5361-9-44026 >> E-Mail: extern.maik.himst...@volkswagen.de >> -------------------------------------------------------------- >> ------------------ >> >> Maik Himstedt >> Consultant >> Benzstraße 25a, 38446 Wolfsburg >> +49-5361-464 78-0 (Tel.) >> +49-5361-464 78-10 (Fax) >> E-Mail: maik.himst...@t-systems.com >> Internet: http://www.t-systems-onsite.de >> >> Geschäftsführung: Stefan Kappe, Thomas Müller-Braun >> Handelsregister: Amtsgericht Berlin HRB 51336 >> Sitz der Gesellschaft: Berlin >> > Notice: This e-mail message, together with any attachments, contains > information of Merck & Co., Inc. (One Merck Drive, Whitehouse Station, New > Jersey, USA 08889), and/or its affiliates Direct contact information for > affiliates is available at http://www.merck.com/contact/contacts.html) that > may be confidential, proprietary copyrighted and/or legally privileged. It is > intended solely for the use of the individual or entity named on this > message. If you are not the intended recipient, and have received this > message in error, please notify us immediately by reply e-mail and then > delete it from your system. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org > For additional commands, e-mail: user-h...@struts.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@struts.apache.org For additional commands, e-mail: user-h...@struts.apache.org