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, smFields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserverFields 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ErrorPagefindErrorPage(int statusCode, Throwable throwable) Return the error page associated with the specified status and exception.protected StringPrint out a partial servlet stack trace (truncating at the last occurrence of javax.servlet.).getProperty(String name) voidInvoke the next Valve in the sequence.booleanbooleanprotected voidPrints out an error report.booleansetProperty(String name, String value) voidsetShowReport(boolean showReport) Enables/Disables full error reportsvoidsetShowServerInfo(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, toStringMethods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregisterMethods 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-trueto show full error data
-
isShowReport
public boolean isShowReport() -
setShowServerInfo
public void setShowServerInfo(boolean showServerInfo) Enables/Disables server info on error pages- Parameters:
showServerInfo-trueto show server info
-
isShowServerInfo
public boolean isShowServerInfo() -
setProperty
-
getProperty
-