You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2003/12/11 23:56:14 UTC
cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/connector HttpRequestBase.java
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: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org