Package org.apache.catalina.valves
Class ErrorReportValve
java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.util.LifecycleMBeanBase
org.apache.catalina.valves.ValveBase
org.apache.catalina.valves.ErrorReportValve
- All Implemented Interfaces:
MBeanRegistration
,Contained
,JmxEnabled
,Lifecycle
,Valve
- Direct Known Subclasses:
JsonErrorReportValve
,ProxyErrorReportValve
Implementation of a Valve that outputs HTML error pages.
This Valve should be attached at the Host level, although it will work if attached to a Context.
HTML code from the Cocoon 2 project.
- Author:
- Remy Maucherat, Craig R. McClanahan, Nicola Ken Barozzi Aisa, Stefano Mazzocchi, Yoav Shapira
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
Lifecycle.SingleUse
-
Field Summary
Fields inherited from class org.apache.catalina.valves.ValveBase
asyncSupported, container, containerLog, next, sm
Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserver
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected ErrorPage
findErrorPage
(int statusCode, Throwable throwable) Return the error page associated with the specified status and exception.protected String
Print out a partial servlet stack trace (truncating at the last occurrence of javax.servlet.).getProperty
(String name) void
Invoke the next Valve in the sequence.boolean
boolean
protected void
Prints out an error report.boolean
setProperty
(String name, String value) void
setShowReport
(boolean showReport) Enables/Disables full error reportsvoid
setShowServerInfo
(boolean showServerInfo) Enables/Disables server info on error pagesMethods inherited from class org.apache.catalina.valves.ValveBase
backgroundProcess, getContainer, getDomainInternal, getNext, getObjectNameKeyProperties, initInternal, isAsyncSupported, setAsyncSupported, setContainer, setNext, startInternal, stopInternal, toString
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregister
Methods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop
-
Constructor Details
-
ErrorReportValve
public ErrorReportValve()
-
-
Method Details
-
invoke
Invoke the next Valve in the sequence. When the invoke returns, check the response state. If the status code is greater than or equal to 400 or an uncaught exception was thrown then the error handling will be triggered.- Parameters:
request
- The servlet request to be processedresponse
- The servlet response to be created- Throws:
IOException
- if an input/output error occursServletException
- if a servlet error occurs
-
findErrorPage
Return the error page associated with the specified status and exception.- Parameters:
statusCode
- the status codethrowable
- the exception- Returns:
- the associated error page
-
report
Prints out an error report.- Parameters:
request
- The request being processedresponse
- The response being generatedthrowable
- The exception that occurred (which possibly wraps a root cause exception
-
getPartialServletStackTrace
Print out a partial servlet stack trace (truncating at the last occurrence of javax.servlet.).- Parameters:
t
- The stack trace to process- Returns:
- the stack trace relative to the application layer
-
setShowReport
public void setShowReport(boolean showReport) Enables/Disables full error reports- Parameters:
showReport
-true
to show full error data
-
isShowReport
public boolean isShowReport() -
setShowServerInfo
public void setShowServerInfo(boolean showServerInfo) Enables/Disables server info on error pages- Parameters:
showServerInfo
-true
to show server info
-
isShowServerInfo
public boolean isShowServerInfo() -
setProperty
-
getProperty
-