remm        2004/02/11 04:07:23

  Modified:    catalina/src/share/org/apache/catalina/core
                        ApplicationDispatcher.java
  Log:
  - The forward request attributes must reflect the original request. So only set them
    if the request being passed doesn't have them.
  
  Revision  Changes    Path
  1.29      +17 -15    
jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/ApplicationDispatcher.java
  
  Index: ApplicationDispatcher.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/core/ApplicationDispatcher.java,v
  retrieving revision 1.28
  retrieving revision 1.29
  diff -u -r1.28 -r1.29
  --- ApplicationDispatcher.java        26 Jan 2004 19:47:03 -0000      1.28
  +++ ApplicationDispatcher.java        11 Feb 2004 12:07:23 -0000      1.29
  @@ -423,17 +423,19 @@
               wrequest.setRequestURI(requestURI);
               wrequest.setServletPath(servletPath);
               wrequest.setPathInfo(pathInfo);
  -        
  -            wrequest.setAttribute(Globals.FORWARD_REQUEST_URI_ATTR,
  -                                  hrequest.getRequestURI());
  -            wrequest.setAttribute(Globals.FORWARD_CONTEXT_PATH_ATTR,
  -                                  hrequest.getContextPath());
  -            wrequest.setAttribute(Globals.FORWARD_SERVLET_PATH_ATTR,
  -                                  hrequest.getServletPath());
  -            wrequest.setAttribute(Globals.FORWARD_PATH_INFO_ATTR,
  -                                  hrequest.getPathInfo());
  -            wrequest.setAttribute(Globals.FORWARD_QUERY_STRING_ATTR,
  -                                  hrequest.getQueryString());
  +
  +            if (hrequest.getAttribute(Globals.FORWARD_REQUEST_URI_ATTR) == null) {
  +                wrequest.setAttribute(Globals.FORWARD_REQUEST_URI_ATTR,
  +                                      hrequest.getRequestURI());
  +                wrequest.setAttribute(Globals.FORWARD_CONTEXT_PATH_ATTR,
  +                                      hrequest.getContextPath());
  +                wrequest.setAttribute(Globals.FORWARD_SERVLET_PATH_ATTR,
  +                                      hrequest.getServletPath());
  +                wrequest.setAttribute(Globals.FORWARD_PATH_INFO_ATTR,
  +                                      hrequest.getPathInfo());
  +                wrequest.setAttribute(Globals.FORWARD_QUERY_STRING_ATTR,
  +                                      hrequest.getQueryString());
  +            }
    
               if (queryString != null) {
                   wrequest.setQueryString(queryString);
  
  
  

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

Reply via email to