You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by BugRat Mail System <to...@cortexity.com> on 2000/09/10 20:02:54 UTC

BugRat Report #95 has been filed.

Bug report #95 has just been filed.

You can view the report at the following URL:

   <http://znutar.cortexity.com:8888/BugRatViewer/ShowReport/95>

REPORT #95 Details.

Project: Tomcat
Category: Bug Report
SubCategory: New Bug Report
Class: swbug
State: received
Priority: high
Severity: serious
Confidence: public
Environment: 
   Release: tomcat 3.2 beta/3.3 dev
   JVM Release: any
   Operating System: any
   OS Release: any
   Platform: any

Synopsis: 
error-page handling doesn't work

Description:
I've specified an error-page element in web.xml
for exception-type javax.servlet.ServletException.

But, when a request is made to a servlet that throws a 
ServletException, the servlet mapped to the location 
I specified is never invoked.  Instead, tomcat's default
error handler is invoked.  This used to work in Tomcat 3.1.

I found the cause of this behaviour in a simple typo
in ContextManager.java.  I've included a patch in the 
Known Work Around section of this bug report.

In Tomcat 3.1, I also used to be able to specify a jsp file
as the location in an error-page element.  This does not 
work in tomcat 3.2 beta even after this simple patch is 
applied.  The JspServlet is selected correctly, but the 
request's servlet path matches that of the error-originating 
request, not that of the error-page so the JspServlet 
reports that it cannot find the jsp file.  I'm not sure which
is the appropriate fix for this secondary problem, either 
to invoke the error servlet with a request dispatcher or to 
use internal mechanisms to reproduce what the request
dispatcher does.  Something along those lines should take 
care of it though.