cedric 2002/07/24 06:01:46 Modified: src/test/org/apache/struts/util TestRequestUtils.java src/share/org/apache/struts/util RequestUtils.java Log: Re-enable automatic '/' prefix in forwardURL(...). Re-enable associated tests (passed successfully). Tiles now catch the forward path before the call to forwardURL(...). This should solve again bug 10534. Revision Changes Path 1.9 +4 -12 jakarta-struts/src/test/org/apache/struts/util/TestRequestUtils.java Index: TestRequestUtils.java =================================================================== RCS file: /home/cvs/jakarta-struts/src/test/org/apache/struts/util/TestRequestUtils.java,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- TestRequestUtils.java 12 Jul 2002 09:51:57 -0000 1.8 +++ TestRequestUtils.java 24 Jul 2002 13:01:46 -0000 1.9 @@ -591,7 +591,6 @@ // Default subapp -- Forward with relative path (non-context-relative) - /* FIXME - comment out until Tiles conundrum is solved public void testComputeURL1f() { request.setPathElements("/myapp", "/action.do", null, null); @@ -609,11 +608,9 @@ "/myapp/relative.jsp", url); } - */ // Default subapp -- Forward with relative path (context-relative) - /* FIXME - comment out until Tiles conundrum is solved public void testComputeURL1g() { request.setPathElements("/myapp", "/action.do", null, null); @@ -631,7 +628,6 @@ "/myapp/relative.jsp", url); } - */ // Second subapp -- Forward only @@ -749,7 +745,6 @@ // Second subapp -- Forward with relative path (non-context-relative) - /* FIXME - comment out until Tiles conundrum is solved public void testComputeURL2f() { request.setAttribute(Action.APPLICATION_KEY, appConfig2); @@ -768,11 +763,9 @@ "/myapp/2/relative.jsp", url); } - */ // Second subapp -- Forward with relative path (context-relative) - /* FIXME - comment out until Tiles conundrum is solved public void testComputeURL2g() { request.setAttribute(Action.APPLICATION_KEY, appConfig2); @@ -791,7 +784,6 @@ "/myapp/relative.jsp", url); } - */ // Add parameters only 1.49 +13 -14 jakarta-struts/src/share/org/apache/struts/util/RequestUtils.java Index: RequestUtils.java =================================================================== RCS file: /home/cvs/jakarta-struts/src/share/org/apache/struts/util/RequestUtils.java,v retrieving revision 1.48 retrieving revision 1.49 diff -u -r1.48 -r1.49 --- RequestUtils.java 12 Jul 2002 15:47:01 -0000 1.48 +++ RequestUtils.java 24 Jul 2002 13:01:46 -0000 1.49 @@ -1172,15 +1172,18 @@ } - /** * Return the context-relative URL that corresponds to the specified * {@link ForwardConfig}, relative to the module associated - * with the current {@link ApplicationConfig}. + * with the current {@link ApplicationConfig}. The forward path is + * gracefully prefixed with a '/' according to the boolean + * * * @param request The servlet request we are processing * @param forward ForwardConfig to be evaluated - * + * @param slashPrefixed If true, method takes care to prefix the forward path + * URL with a '/' if needed. If false, the '/' is added only if forward + * path is used after another prefix. * @since Struts 1.1b2 */ public static String forwardURL(HttpServletRequest request, @@ -1191,11 +1194,9 @@ // Handle a ForwardConfig marked as context relative StringBuffer sb = new StringBuffer(); if (forward.getContextRelative()) { - /* Disabled to let Tiles definition names unchanged ! - if (!path.startsWith("/")) { + if ( !path.startsWith("/") ) { sb.append("/"); } - */ sb.append(path); return (sb.toString()); } @@ -1208,11 +1209,10 @@ if (forwardPattern == null) { // Performance optimization for previous default behavior sb.append(appConfig.getPrefix()); - /* Disabled to let Tiles definition names unchanged ! + // smoothly insert a '/' if needed if (!path.startsWith("/")) { sb.append("/"); } - */ sb.append(path); } else { boolean dollar = false; @@ -1224,11 +1224,10 @@ sb.append(appConfig.getPrefix()); break; case 'P': - /* Disabled to let Tiles definition names unchanged ! + // add '/' if needed if (!path.startsWith("/")) { sb.append("/"); } - */ sb.append(path); break; case '$':
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>