Index: src/main/java/info/magnolia/module/templatingkit/templates/RedirectTemplateModel.java =================================================================== --- src/main/java/info/magnolia/module/templatingkit/templates/RedirectTemplateModel.java (revision 41201) +++ src/main/java/info/magnolia/module/templatingkit/templates/RedirectTemplateModel.java (working copy) @@ -47,10 +47,6 @@ */ package info.magnolia.module.templatingkit.templates; -import java.io.IOException; - -import javax.jcr.RepositoryException; - import info.magnolia.cms.core.Content; import info.magnolia.context.MgnlContext; import info.magnolia.context.WebContext; @@ -57,6 +53,10 @@ import info.magnolia.module.templating.MagnoliaTemplatingUtilities; import info.magnolia.module.templating.RenderingModel; +import java.io.IOException; + +import javax.jcr.RepositoryException; + /** * @author fgrilli * @@ -63,7 +63,7 @@ */ public class RedirectTemplateModel extends STKTemplateModel { - public RedirectTemplateModel(Content content, STKTemplate definition, RenderingModel parent) { + public RedirectTemplateModel(final Content content, final STKTemplate definition, final RenderingModel parent) { super(content, definition, parent); } @@ -76,7 +76,8 @@ final WebContext webContext = MgnlContext.getWebContext(); final String redirectTo; if (isInternal(path)) { - redirectTo = webContext.getContextPath() + path; + final Content pageContent = MagnoliaTemplatingUtilities.getInstance().getContent(path); + redirectTo = MagnoliaTemplatingUtilities.getInstance().createLink(pageContent); } else { redirectTo = path; } @@ -82,9 +83,9 @@ } webContext.getResponse().sendRedirect(redirectTo); } - } catch (RepositoryException e) { + } catch (final RepositoryException e) { throw new RuntimeException(e); - } catch (IOException e) { + } catch (final IOException e) { throw new RuntimeException(e); } return RenderingModel.SKIP_RENDERING; @@ -92,7 +93,7 @@ return super.execute(); } - protected boolean isInternal(String url) { + protected boolean isInternal(final String url) { return !url.startsWith("http://") && !url.startsWith("https://"); } }