markt 2003/12/11 14:56:14 Modified: catalina/src/share/org/apache/catalina/connector HttpRequestBase.java Log: - Port of fix for bug 3098. Include the pathInfo when a relative path is used to get a request dispatcher. Revision Changes Path 1.40 +18 -9 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpRequestBase.java Index: HttpRequestBase.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector/HttpRequestBase.java,v retrieving revision 1.39 retrieving revision 1.40 diff -u -r1.39 -r1.40 --- HttpRequestBase.java 22 Apr 2002 00:00:50 -0000 1.39 +++ HttpRequestBase.java 11 Dec 2003 22:56:14 -0000 1.40 @@ -76,7 +76,6 @@ import java.util.Date; import java.util.Enumeration; import java.util.HashMap; -import java.util.Hashtable; import java.util.Locale; import java.util.Map; import javax.servlet.RequestDispatcher; @@ -94,7 +93,6 @@ import org.apache.catalina.util.Enumerator; import org.apache.catalina.util.ParameterMap; import org.apache.catalina.util.RequestUtil; -import org.apache.catalina.util.StringParser; /** @@ -793,13 +791,24 @@ if (servletPath == null) servletPath = getServletPath(); - int pos = servletPath.lastIndexOf('/'); + // Add the path info, if there is any + String pathInfo = getPathInfo(); + String requestPath = null; + + if (pathInfo == null) { + requestPath = servletPath; + } else { + requestPath = servletPath + pathInfo; + } + + int pos = requestPath.lastIndexOf('/'); + String relative = null; if (pos >= 0) { relative = RequestUtil.normalize - (servletPath.substring(0, pos + 1) + path); + (requestPath.substring(0, pos + 1) + path); } else { - relative = RequestUtil.normalize(servletPath + path); + relative = RequestUtil.normalize(requestPath + path); } return (context.getServletContext().getRequestDispatcher(relative));
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]