I tried the "normal" invalidate before and got the same exception. I'm not sure I understood what you said about the constructor in your other reply.
My scenario is like this: The user will press the logout link, the session logs out and I redirect to the Login page. I had another solution like this: public void onClick() { PortalSession session = (PortalSession) getSession(); session.setCredentials(null, "");//our own method setResponsePage(com.eurekify.web.Login.class); } It worked, but the I could reenter the pages with the back button. After checking invalidate, I found that it's better, but the I saw this exception. On Sun, May 4, 2008 at 12:48 PM, Johan Compagner <[EMAIL PROTECTED]> wrote: > Why do you do invalidateNow? > You want a new session for that next response page? > It seems jetty does invalidate but doesnt give us a new one in the same > request. > Or wicket holds on to the http session object but i dont think we do that. > > On 5/4/08, Eyal Golan <[EMAIL PROTECTED]> wrote: > > Another question (mfs, if you don't mind). > > I did the invalidate on a link: > > Link logoutLink = new Link("logoutLink") { > > private static final long serialVersionUID = 1L; > > > > @Override > > public void onClick() { > > getSession().invalidateNow(); > > setResponsePage(com.eurekify.web.Login.class); > > } > > }; > > > > It works, but I get an IllegalState Exception: > > 2008-05-04 11:49:06,625 ERROR [org.mortbay.log] - /eurekify/portal/: > > java.lang.IllegalStateException > > at > > > org.mortbay.jetty.servlet.AbstractSessionManager$Session.setAttribute(AbstractSessionManager.java:916) > > at > > > com.eurekify.security.SecurityFilter.doFilterInternal(SecurityFilter.java:41) > > at > > > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75) > > at > > > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1065) > > at > > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365) > > at > > > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185) > > at > > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > > at > > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689) > > at > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391) > > at > > > org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) > > at > > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > > at org.mortbay.jetty.Server.handle(Server.java:285) > > at > > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457) > > at > > > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:751) > > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500) > > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209) > > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357) > > at > > > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329) > > at > > > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475) > > > > Is there a way to eliminate this? > > I tried to put a catch surrounding the invalidate, but it's no use. > > > > > > thanks, > > > > > > On Sun, May 4, 2008 at 10:00 AM, mfs <[EMAIL PROTECTED]> wrote: > > > > > > > > Looking for some follow up on this.. > > > > > > 1) Just wondering as to why isnt a constructor a good place to do the > > > redirection to an external url , ? > > > 2) What should be the right place for it, given my use-case.. > > > > > > > > > Would writing a LogoutFilter be a good option.. > > > > > > > > > Thanks in advance.. > > > > > > > > > > > > > > > Johan Compagner wrote: > > > > > > > > I think this usecase should be supported but isnt the best way, you > > > > should throw an AbortException when you want to redirect in the > > > > constructor. Dont know from top of my head if we have one just for > an > > > > url but that is easily made > > > > > > > > On 4/30/08, mfs <[EMAIL PROTECTED]> wrote: > > > >> > > > >> Guys, > > > >> > > > >> I have a LogoutPage which does the following in its constructor > > > >> > > > >> LogoutPage() > > > >> { > > > >> getSession().invalidate(); > > > >> > > > >> // redirecting to the external app logout page > > > >> RequestCycle.get().setRequestTarget( > > > >> new RedirectRequestTarget(Host.getHttpsUrl() > > > >> + xyz.getLogoutURL())); > > > >> > > > >> getRequestCycle().setRedirect(true); > > > >> } > > > >> > > > >> Now, for some reasons the redirect to the specified external app > page > > > >> doesnt > > > >> happen, infact i am taken to the session-expired page (which is > because > > > >> the > > > >> request comes to wicket app, instead of redirection to this > external > > > app) > > > >> . > > > >> Let me add that i am using wiket-auth-roles for authorization... > > > >> > > > >> Also the reason i am doing this inside the Page itself (and not in > the > > > >> onClick or some other event as suggested in another other thread) > is > > > >> because > > > >> i need to expose this LogoutPage to an external app as well, which > will > > > >> redirect to this page after invalidating the session....This part > of > > > >> Interoperability/SingleSignon Support. > > > >> > > > >> Thanks in advance. > > > >> > > > >> -- > > > >> View this message in context: > > > >> > > > > > > http://www.nabble.com/LogoutPage---Responsible-for-invalidation-and-redirection-to-non-wicket-page-tp16974119p16974119.html > > > >> Sent from the Wicket - User mailing list archive at Nabble.com. > > > >> > > > >> > > > >> > --------------------------------------------------------------------- > > > >> To unsubscribe, e-mail: [EMAIL PROTECTED] > > > >> For additional commands, e-mail: [EMAIL PROTECTED] > > > >> > > > >> > > > > > > > > > --------------------------------------------------------------------- > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > -- > > > View this message in context: > > > > > > http://www.nabble.com/LogoutPage---Responsible-for-invalidation-and-redirection-to-non-wicket-page-tp16974119p17043421.html > > > Sent from the Wicket - User mailing list archive at Nabble.com. > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > -- > > Eyal Golan > > [EMAIL PROTECTED] > > > > Visit: http://jvdrums.sourceforge.net/ > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Eyal Golan [EMAIL PROTECTED] Visit: http://jvdrums.sourceforge.net/