https://issues.apache.org/bugzilla/show_bug.cgi?id=52586

--- Comment #1 from diego.rivera...@gmail.com <diego.rivera...@gmail.com> 
2012-02-02 21:48:48 UTC ---
The problem seems to be in StandardHostValve, on (or about) line 438:

    private boolean custom(Request request, Response response,
                             ErrorPage errorPage) {

        if (container.getLogger().isDebugEnabled())
            container.getLogger().debug("Processing " + errorPage);

        request.setPathInfo(errorPage.getLocation());

        try {
            // Forward control to the specified location
            ServletContext servletContext =
                request.getContext().getServletContext();

Here, evidently the pathinfo for the request being serviced is set to the
location of the error page being forwarded to:

        request.setPathInfo(errorPage.getLocation());

This is evidently incorrect: pathInfo should be set to the path info of the
topmost request on the stack, not the location of the error page being
forwarded to (this explicitly contradicts the Servlet spec).

In my mind, this line should simply not exist.  I'll leave it up to you Tomcat
experts to determine what the impact of that is.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to