remm        02/03/15 21:28:15

  Modified:    catalina/src/share/org/apache/catalina/servlets
                        DefaultServlet.java
  Log:
  - Using the URL encoded requestURI can lead to double URL encoding.
    Note: Some of the redirects could be avoided. This will be done in a later
    refactoring.
  
  Revision  Changes    Path
  1.52      +11 -5     
jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java
  
  Index: DefaultServlet.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
  retrieving revision 1.51
  retrieving revision 1.52
  diff -u -r1.51 -r1.52
  --- DefaultServlet.java       9 Mar 2002 23:22:38 -0000       1.51
  +++ DefaultServlet.java       16 Mar 2002 05:28:15 -0000      1.52
  @@ -1,7 +1,7 @@
   /*
  - * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
 1.51 2002/03/09 23:22:38 remm Exp $
  - * $Revision: 1.51 $
  - * $Date: 2002/03/09 23:22:38 $
  + * $Header: 
/home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/servlets/DefaultServlet.java,v
 1.52 2002/03/16 05:28:15 remm Exp $
  + * $Revision: 1.52 $
  + * $Date: 2002/03/16 05:28:15 $
    *
    * ====================================================================
    *
  @@ -125,7 +125,7 @@
    *
    * @author Craig R. McClanahan
    * @author Remy Maucherat
  - * @version $Revision: 1.51 $ $Date: 2002/03/09 23:22:38 $
  + * @version $Revision: 1.52 $ $Date: 2002/03/16 05:28:15 $
    */
   
   public class DefaultServlet
  @@ -1135,7 +1135,13 @@
           if (resourceInfo.collection) {
   
               if (!request.getRequestURI().endsWith("/")) {
  -                String redirectPath = request.getRequestURI() + "/";
  +                String redirectPath = path;
  +                String contextPath = request.getContextPath();
  +                if ((contextPath != null) && (!contextPath.equals("/"))) {
  +                    redirectPath = contextPath + redirectPath;
  +                }
  +                if (!(redirectPath.endsWith("/")))
  +                    redirectPath = redirectPath + "/";
                   redirectPath = appendParameters(request, redirectPath);
                   response.sendRedirect(redirectPath);
                   return;
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to