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, Lifecycle, Valve

      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 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

    Constructors
    Constructor and Description
    `ErrorReportValve()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `getInfo()` Return descriptive information about this Valve implementation.
    `protected String` | `getPartialServletStackTrace(Throwable t)` Print out a partial servlet stack trace (truncating at the last occurrence of javax.servlet.).
    `void` | `invoke(Request request, Response response)` Invoke the next Valve in the sequence.
    `boolean` | `isShowReport()`
    `boolean` | `isShowServerInfo()`
    `protected void` | `report(Request request, Response response, Throwable throwable)` Prints out an error report.
    `void` | `setShowReport(boolean showReport)` Enables/Disables full error reports
    `void` | `setShowServerInfo(boolean showServerInfo)` Enables/Disables server info on error pages

    - ### Methods inherited from class org.apache.catalina.valves.ValveBase

      `backgroundProcess, event, 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`

    - ### Methods inherited from class org.apache.catalina.util.LifecycleBase

      `addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, removeLifecycleListener, setState, setState, start, stop`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ErrorReportValve

          public ErrorReportValve()

  - ### Method Detail

    - #### getInfo

          public String getInfo()

      Return descriptive information about this Valve implementation.
      Specified by:
        `getInfo` in interface `Valve`
      Overrides:
        `getInfo` in class `ValveBase`

    - #### invoke

          public void invoke(Request request,
                    Response response)
                      throws 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.
      Specified by:
        `invoke` in interface `Valve`
      Specified by:
        `invoke` in class `ValveBase`
      Parameters:
        `request` - The servlet request to be processed
        `response` - The servlet response to be created
      Throws:
        `IOException` - if an input/output error occurs
        `ServletException` - if a servlet error occurs

    - #### report

          protected void report(Request request,
                    Response response,
                    Throwable throwable)

      Prints out an error report.
      Parameters:
        `request` - The request being processed
        `response` - The response being generated
        `throwable` - The exception that occurred (which possibly wraps a root cause exception

    - #### getPartialServletStackTrace

          protected String getPartialServletStackTrace(Throwable t)

      Print out a partial servlet stack trace (truncating at the last occurrence of javax.servlet.).

    - #### setShowReport

          public void setShowReport(boolean showReport)

      Enables/Disables full error reports
      Parameters:
        `showReport` -

    - #### isShowReport

          public boolean isShowReport()

    - #### setShowServerInfo

          public void setShowServerInfo(boolean showServerInfo)

      Enables/Disables server info on error pages
      Parameters:
        `showServerInfo` -

    - #### isShowServerInfo

          public boolean isShowServerInfo()

Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.