How to do redirects in tapestry
How to do client-side redirects-after-post (taken from someone else’s sample code):
public abstract class somePage extends ATapestryPage { @InjectObject("engine-service:page") public abstract IEngineService getPageService(); public ILink theListenerMethod() {/*
Redirect to next page. SECURITY NOTE - do not use simple page activation Instead, we return an ILink because that instructs Tapestry to do a redirect-after-post. Redirect-after-post protects against a security vulnerability in which a user may log in without a password simply by using a browser that has been logged out, then using the Back button to go back to the first screen after the login screen and pressing refresh. Without redirect-after-post this would re-post the login info and they’d be logged in!
*/ILink redirectTo = getPageService().getLink(false, WelcomePage.PAGE_NAME); return redirectTo; } }
To do a server-side redirect, throw a org.apache.tapestry.PageRedirectException that was created with the desired page to redirect to.