Going back through my list of things to do, the port of this patch hasn't yet been committed. Please could one of the committers do this so I can close bug 3098.
Thanks, Mark Port of my previous patch to tomcat 4. As previously, I took the opportunity to remove some unused imports. Mark Index: coyote/src/java/org/apache/coyote/tomcat4/CoyoteRequest.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-connectors/coyote/src/java/org/apache/coyote/ tomcat4/CoyoteRequest.java,v retrieving revision 1.29 diff -u -r1.29 CoyoteRequest.java --- coyote/src/java/org/apache/coyote/tomcat4/CoyoteRequest.java 5 Apr 2003 08:18:04 -0000 1.29 +++ coyote/src/java/org/apache/coyote/tomcat4/CoyoteRequest.java 1 Sep 2003 17:32:38 -0000 @@ -88,7 +88,6 @@ import javax.servlet.RequestDispatcher; import javax.servlet.ServletContext; -import javax.servlet.ServletException; import javax.servlet.ServletInputStream; import javax.servlet.ServletRequest; import javax.servlet.http.Cookie; @@ -116,8 +115,6 @@ import org.apache.catalina.util.StringManager; import org.apache.catalina.util.StringParser; -import org.apache.tomcat.util.net.SSLSupport; - /** * Wrapper object for the Coyote request. * @@ -1097,13 +1094,23 @@ 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)); Index: catalina/src/share/org/apache/catalina/connector/HttpRequestBase.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/co nnector/HttpRequestBase.java,v retrieving revision 1.39 diff -u -r1.39 HttpRequestBase.java --- catalina/src/share/org/apache/catalina/connector/HttpRequestBase.java 22 Apr 2002 00:00:50 -0000 1.39 +++ catalina/src/share/org/apache/catalina/connector/HttpRequestBase.java 1 Sep 2003 17:26:24 -0000 @@ -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] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]