Sounds to complicated. Then I prefer the old fashioned way like this ... Wicket generates the new Url based on a passed in "Product". I don't have to bother about ".html" ending and segement sizes and so on ...
mountPage("product.html", LegacyProductPage.class); mountPage("product/#{product_name}/${product}", ProductPage.class); public abstract class AbstractRedirectPage extends WebPage { public AbstractRedirectPage( final PageParameters parameters, final String url ) { this( parameters, url, HttpServletResponse.SC_MOVED_PERMANENTLY ); } public AbstractRedirectPage( final PageParameters parameters, final String url, int statusCode ) { super(parameters); throw new RedirectToUrlException(toFullUrl( url ), statusCode ); } } public class LegacyProductPage extends AbstractRedirectPage { public LegacyProductPage( final PageParameters parameters, final Product product ) { super(parameters, getProductPageUrl(product)); } private static String getProductPageUrl( Product product ) { final PageInfo pageInfo = new ProductPage.PageInfo(product); return pageInfo.getRelativeUrl(); } } public class ProductPage extends WebPage { public static class PageInfo { final Product product; public PageInfo( Product product ) { this.product = product; } public String getRelativeUrl() { return RequestCycle.get().urlFor( ProductPage.class, pageParametersForProductPage( product ) ).toString(); } } private final Product product; public ProductPage(final PageParameters pageParameters, final Product product ) { } } -- View this message in context: http://apache-wicket.1842946.n4.nabble.com/Redirect-to-Wicket-page-with-301-Moved-Permanently-tp4631888p4655470.html Sent from the Users forum mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org