Capture Enough Information to Fine-Tune the Application
With a common error handler for both servlets and JSP pages, it’s easy to log information about runtime errors. By capturing information detailing where the error occurred, the precise problem, and all (or at least most of) the dynamic data available at the time, you can fine-tune the application to deal more gracefully with common, predictable runtime errors.
A global error handler declared with the
<error-page>
element in the web.xml file has access to all
information of interest. First of all, it can get information about
which component failed and the exception that was thrown through the
following request attributes.
|
Request attribute name |
Java type |
Description |
javax.servlet.error.status_code |
Integer |
The HTTP status code that triggered a handler declared as a status code handler |
javax.servlet.error.exception |
Throwable |
The exception that triggered a handler declared as an exception handler |
javax.servlet.error.request_uri |
String |
The URL for the request that triggered the handler |
javax.servlet.error.servlet_name |
String |
The declared name for the servlet or JSP page that triggered the handler, or the class name if no name is declared |
In addition to the information available through these request attributes, you should also consider logging request parameter values and application-dependent request, session, and context attributes.