I'll test it in beta-28, but until that validation bug gets fixed, I can't upgrade to it.
On Tue, Mar 31, 2015 at 12:46 PM, Dimitris Zenios <dimitris.zen...@gmail.com > wrote: > FYI just tested with 5.4-beta28 and I don't have such problem > > On Tue, Mar 31, 2015 at 5:38 PM, George Christman <gchrist...@cardaddy.com > > > wrote: > > > Hey Kalle, just checking in with you to see if you happened to have > anymore > > info on this issue. > > > > On Wed, Mar 25, 2015 at 4:05 PM, George Christman < > gchrist...@cardaddy.com > > > > > wrote: > > > > > Thanks Kalle, were using 5.4-beta24 > > > > > > On Wed, Mar 25, 2015 at 1:09 PM, Kalle Korhonen < > > > kalle.o.korho...@gmail.com> wrote: > > > > > >> Sorry, I forgot to reply to your earlier post. Fundamentally, the > issue > > is > > >> caused by tapestry-security operating as part of the > httpservletrequest > > >> pipeline, before the active page is already set up. The library is > > >> internally setting up request globals etc. where needed but you may be > > >> pushing around some shard edge there. It's also possible that some > > change > > >> in the core tapestry has caused the issue to surface. It may be that > the > > >> issue happens exactly when the security library is trying to deal with > > the > > >> expired session. In your stack trace, you'll see that the exception > > >> happens > > >> way before the active page is being set. Just a note that you cannot > > >> simply > > >> return a full page response to an ajax request (as you try to do in > your > > >> example). What's your exact version of T5 you are using? I'll see if > we > > >> have a test for this case and try to reproduce. > > >> > > >> Kalle > > >> > > >> On Wed, Mar 25, 2015 at 6:07 AM, George Christman < > > >> gchrist...@cardaddy.com> > > >> wrote: > > >> > > >> > 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 > > >> > > > >> > > > > > > > > > > > > -- > > > George Christman > > > CEO > > > www.CarDaddy.com > > > P.O. Box 735 > > > Johnstown, New York > > > > > > > > > > > > -- > > George Christman > > CEO > > www.CarDaddy.com > > P.O. Box 735 > > Johnstown, New York > > > -- George Christman CEO www.CarDaddy.com P.O. Box 735 Johnstown, New York