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:
javax.management.MBeanRegistration
,Contained
,JmxEnabled
,Lifecycle
,Valve
- Direct Known Subclasses:
JsonErrorReportValve
public class ErrorReportValve extends ValveBase
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 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 Constructor Description ErrorReportValve()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
getPartialServletStackTrace(java.lang.Throwable t)
Print out a partial servlet stack trace (truncating at the last occurrence of jakarta.servlet.).java.lang.String
getProperty(java.lang.String name)
void
invoke(Request request, Response response)
Invoke the next Valve in the sequence.boolean
isShowReport()
boolean
isShowServerInfo()
protected void
report(Request request, Response response, java.lang.Throwable throwable)
Prints out an error report.boolean
setProperty(java.lang.String name, java.lang.String value)
void
setShowReport(boolean showReport)
Enables/Disables full error reportsvoid
setShowServerInfo(boolean showServerInfo)
Enables/Disables server info on error pages-
Methods 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
-
-
-
-
Method Detail
-
invoke
public void invoke(Request request, Response response) throws java.io.IOException, ServletException
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:
java.io.IOException
- if an input/output error occursServletException
- if a servlet error occurs
-
report
protected void report(Request request, Response response, java.lang.Throwable throwable)
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
protected java.lang.String getPartialServletStackTrace(java.lang.Throwable t)
Print out a partial servlet stack trace (truncating at the last occurrence of jakarta.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
public boolean setProperty(java.lang.String name, java.lang.String value)
-
getProperty
public java.lang.String getProperty(java.lang.String name)
-
-