So I've been able to finally reproduce this bug. I have an ajax form and I'm using tapestry-security. When my session times out and an form action is clicked, I get the "The active page name has not been specified" exception. I found the code throwing the exception, I'm just not sure why this is happening to begin with. https://github.com/apache/tapestry-5/blob/5.4-beta-26/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/AjaxPartialResponseRendererImpl.java line 86.
Shouldn't the page automatically be redirected to the login page when the user session has timed out and an action has been performed. I even tried this without any success. Object onActivate() throws Exception { if (request.isRequestedSessionIdValid()) { //some code } return Login.class; } Any thoughts on how to repair this issue? On Thu, Mar 19, 2015 at 12:54 PM, George Christman <gchrist...@cardaddy.com> wrote: > Could someone help me to understand this exception? I'm using Tap 5.4 and > I've been seeing this quite often, but can't seem to reproduce it. > > The active page name has not been > specified.org.apache.tapestry5.ioc.internal.OperationException: The active > page name has not been specified. at > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:184) > at > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.perform(OperationTrackerImpl.java:118) > at > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.perform(PerThreadOperationTracker.java:84) > at > org.apache.tapestry5.ioc.internal.RegistryImpl.perform(RegistryImpl.java:1264) > at > org.apache.tapestry5.internal.services.DeferredResponseRenderer.invokeQueuedRenderer(DeferredResponseRenderer.java:73) > at > org.apache.tapestry5.internal.services.DeferredResponseRenderer.handleComponentEvent(DeferredResponseRenderer.java:47) > at $ComponentRequestHandler_18c715615aaee.handleComponentEvent(Unknown > Source) at > org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39) > at $ComponentRequestHandler_18c715615aaee.handleComponentEvent(Unknown > Source) at > org.apache.tapestry5.internal.services.ProductionModeUnknownComponentFilter.handleComponentEvent(ProductionModeUnknownComponentFilter.java:50) > at $ComponentRequestHandler_18c715615aaee.handleComponentEvent(Unknown > Source) at > org.apache.tapestry5.internal.services.RequestOperationTracker$1.perform(RequestOperationTracker.java:55) > at > org.apache.tapestry5.internal.services.RequestOperationTracker$1.perform(RequestOperationTracker.java:52) > at > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.perform(OperationTrackerImpl.java:110) > at > org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.perform(PerThreadOperationTracker.java:84) > at > org.apache.tapestry5.ioc.internal.RegistryImpl.perform(RegistryImpl.java:1264) > at > org.apache.tapestry5.internal.services.RequestOperationTracker.handleComponentEvent(RequestOperationTracker.java:47) > at $ComponentRequestHandler_18c715615aaee.handleComponentEvent(Unknown > Source) at > org.tynamo.security.SecurityComponentRequestFilter.handleComponentEvent(SecurityComponentRequestFilter.java:41) > at $ComponentRequestFilter_18c715615aaeb.handleComponentEvent(Unknown > Source) at > $ComponentRequestHandler_18c715615aaee.handleComponentEvent(Unknown Source) > at $ComponentRequestHandler_18c715615aac8.handleComponentEvent(Unknown > Source) at > org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:48) > at $Dispatcher_18c715615aac9.dispatch(Unknown Source) at > $Dispatcher_18c715615aac2.dispatch(Unknown Source) at > org.apache.tapestry5.modules.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:305) > at org.healthresearch.etss.services.AppModule$1.service(AppModule.java:302) > at $RequestFilter_18c715615aac1.service(Unknown Source) at > $RequestHandler_18c715615aac3.service(Unknown Source) at > org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26) > at $RequestHandler_18c715615aac3.service(Unknown Source) at > org.apache.tapestry5.modules.TapestryModule$3.service(TapestryModule.java:844) > at $RequestHandler_18c715615aac3.service(Unknown Source) at > org.apache.tapestry5.modules.TapestryModule$2.service(TapestryModule.java:834) > at $RequestHandler_18c715615aac3.service(Unknown Source) at > org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:89) > at $RequestHandler_18c715615aac3.service(Unknown Source) at > $RequestHandler_18c715615aa81.service(Unknown Source) at > org.apache.tapestry5.modules.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:256) > at > org.tynamo.security.services.impl.SecurityConfiguration$1.call(SecurityConfiguration.java:56) > at > org.tynamo.security.services.impl.SecurityConfiguration$1.call(SecurityConfiguration.java:54) > at > org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90) > at > org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83) > at > org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383) > at > org.tynamo.security.services.impl.SecurityConfiguration.service(SecurityConfiguration.java:54) > at $HttpServletRequestFilter_18c715615aa80.service(Unknown Source) at > $HttpServletRequestHandler_18c715615aa83.service(Unknown Source) at > org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:45) > at $HttpServletRequestHandler_18c715615aa83.service(Unknown Source) at > org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:59) > at $HttpServletRequestHandler_18c715615aa83.service(Unknown Source) at > org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62) > at $HttpServletRequestFilter_18c715615aa7c.service(Unknown Source) at > $HttpServletRequestHandler_18c715615aa83.service(Unknown Source) at > org.apache.tapestry5.modules.TapestryModule$1.service(TapestryModule.java:794) > at $HttpServletRequestHandler_18c715615aa83.service(Unknown Source) at > $HttpServletRequestHandler_18c715615aa7b.service(Unknown Source) at > org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:168) at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) > at > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) > at > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041) > at > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603) > at > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > at java.lang.Thread.run(Thread.java:745) Caused by: > java.lang.IllegalStateException: The active page name has not been > specified. at > org.apache.tapestry5.internal.services.AjaxPartialResponseRendererImpl$1.perform(AjaxPartialResponseRendererImpl.java:86) > at > org.apache.tapestry5.internal.services.AjaxPartialResponseRendererImpl$1.perform(AjaxPartialResponseRendererImpl.java:75) > at > org.apache.tapestry5.ioc.internal.OperationTrackerImpl.perform(OperationTrackerImpl.java:110) > ... 72 more > > > -- George Christman CEO www.CarDaddy.com P.O. Box 735 Johnstown, New York