I think we need a RedirectToExternalException extends AbortRestartResponseException that sets the RedirectRequestTarget to an external page. Isn't too hard to implement I suppose...
public class RedirectToExternalException extends AbstractRestartResponseException { private static final long serialVersionUID = 1L; public RedirectToExternalException(String url) { RequestCycle rc = RequestCycle.get(); if (rc == null) { throw new IllegalStateException( "This exception can only be thrown from within request processing cycle"); } else { Response r = rc.getResponse(); if (!(r instanceof WebResponse)) { throw new IllegalStateException( "This exception can only be thrown when wicket is processing an http request"); } // abort any further response processing rc.setRequestTarget(new RedirectRequestTarget(url)); } } } Martijn On 5/4/08, mfs <[EMAIL PROTECTED]> wrote: > > Also my major problem is that when i do an invalidate() in the constructor > (with or without any redirection) i am taken to the session-expiry page..I > wonder why is that happening...can you please explain that behavior please ? > ..the reason as i explained earlier i had to do the same in the in the > LogoutPage Constructor is because i need to expose this page to an external > non-wicket app (which on logout) would be redirecting to this page (if a > wicket session exists)..so as to invalidate my wicket session app.. > > > > > Johan Compagner wrote: > > > > In a constructor of another page is just fine, but use an > > RestartXxxException. Else you have 2 things that wants to be the > > response, the redirect and the page you are in. > > > > On 5/4/08, 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.. > >> > >> 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-tp16974119p17042343.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-tp16974119p17050703.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] > > -- Buy Wicket in Action: http://manning.com/dashorst Apache Wicket 1.3.3 is released Get it now: http://www.apache.org/dyn/closer.cgi/wicket/1.3.3 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]