I got to the bottom of this. Another developer on the project had added a RequestCycleProcessor And so my code wasn't executing.
So now I can detected the PageExpiredException and deal with it gracefully. But I'm back to my original issue, which is that if the session is expired, then the page is trashed and all Ajax calls don't work anymore. Which normally isn't an issue, except this application has a "persistent login" where users are suppose to stay logged in. I added a timer to keep the session alive, but if the machine is put to sleep then the javascript will stop executing and then the session will die. Then if they click on a link it fails. Douglas -----Original Message----- From: Jeremy Levy [mailto:[email protected]] Sent: Monday, March 09, 2009 3:53 PM To: [email protected] Subject: Re: PageExpiredException Can you be certain that the jsessionid is actually present in the request (via cookie or url)? I've seen the session dropped by some mobile browsers in some instances. You can add to your apache logs config to print it out, and then add some debug in your pageexpired page to help reference it back to the access log... On Mon, Mar 9, 2009 at 11:45 AM, Douglas Ferguson < [email protected]> wrote: > I know that this error comes up when there is a serialization issue, but I > don't think that is my problem. > > I'm fairly certain that the session is expiring and wicket is dumping the > pageMap and therefore the AjaxCall bombs. > > Douglas > > -----Original Message----- > From: [email protected] [mailto:[email protected]] On Behalf Of Ryan > Gravener > Sent: Monday, March 09, 2009 10:40 AM > To: [email protected] > Subject: Re: PageExpiredException > > I would double check that all your classes implement Serializable. > > Ryan Gravener > http://ryangravener.com/flex | http://twitter.com/ryangravener > > > On Mon, Mar 9, 2009 at 10:39 AM, Douglas Ferguson < > [email protected]> wrote: > > > I get a PageExpiredException periodically and I'm having trouble > isolating > > the cause. I thought that it had something to do with server restarts > but > > I'm not sure about that now. > > > > Stack: > > > > > > org.apache.wicket.protocol.http.PageExpiredException: Cannot find the > > rendered page in session > > > [pagemap=null,componentPath=5:leftList:tableList:contactList:2:nameCell:namePanelLink,versionNumber=0] > > > > > > > > > > > > at > > > org.apache.wicket.protocol.http.WebRequestCycleProcessor.resolve(WebRequestCycleProcessor.java:190) > > > > > > > > > > > > at org.apache.wicket.RequestCycle.step(RequestCycle.java:1233) > > > > at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1353) > > > > at org.apache.wicket.RequestCycle.request(RequestCycle.java:493) > > > > at > > org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:355) > > > > > > > > > > > > > > > > at > > > org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:200) > > > > at > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) > > > > at > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) > > > > > > > > > > > > > > > > at > > > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) > > > > at > > > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) > > > > at > > > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) > > > > > > > > > > > > > > > > at > > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) > > > > at > > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) > > > > at > > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) > > > > > > > > > > > > > > > > at > > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200) > > > > at > > org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) > > > > at > org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773) > > > > > > > > > > > > > > > > at > > > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703) > > > > at > > > org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895) > > > > at > > > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) > > > > > > > > > > > > > > > > at java.lang.Thread.run(Thread.java:619) > > > > > -- Jeremy Levy See my location in real-time: http://seemywhere.com/jeremy --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
