Package org.apache.catalina.valves
This package contains a variety of small Valve implementations that do
not warrant being packaged separately. In addition, there is a convenience
base class (ValveBase
) that supports the usual mechanisms for
including custom Valves into the corresponding Pipeline.
Other packages that include Valves include
org.apache.tomcat.logger
and
org.apache.tomcat.security
.
-
Interface Summary Interface Description AbstractAccessLogValve.AccessLogElement AccessLogElement writes the partial message into the buffer.AbstractAccessLogValve.CachedElement Marks an AccessLogElement as needing to be have the value cached at the start of the request rather than just recorded at the end as the source data for the element may not be available at the end of the request. -
Class Summary Class Description AbstractAccessLogValve Abstract implementation of the Valve interface that generates a web server access log with the detailed line contents matching a configurable pattern.AbstractAccessLogValve.ByteSentElement write bytes sent, excluding HTTP headers - %b, %BAbstractAccessLogValve.ConnectionStatusElement Write connection status when response is completed - %XAbstractAccessLogValve.CookieElement write a specific cookie - %{xxx}cAbstractAccessLogValve.DateFormatCache Cache structure for formatted timestamps based on seconds.AbstractAccessLogValve.ElapsedTimeElement write time taken to process the request - %D, %TAbstractAccessLogValve.FirstByteTimeElement write time until first byte is written (commit time) in millis - %FAbstractAccessLogValve.HeaderElement write incoming headers - %{xxx}iAbstractAccessLogValve.HttpStatusCodeElement write HTTP status code of the response - %sAbstractAccessLogValve.LocalAddrElement write local IP address - %AAbstractAccessLogValve.LogicalUserNameElement write remote logical username from identd (always returns '-') - %lAbstractAccessLogValve.MethodElement write request method (GET, POST, etc.) - %mAbstractAccessLogValve.QueryElement write Query string (prepended with a '?'AbstractAccessLogValve.RequestAttributeElement write an attribute in the ServletRequest - %{xxx}rAbstractAccessLogValve.RequestElement write first line of the request (method and request URI) - %rAbstractAccessLogValve.RequestURIElement write requested URL path - %UAbstractAccessLogValve.ResponseHeaderElement write a specific response header - %{xxx}oAbstractAccessLogValve.SessionAttributeElement write an attribute in the HttpSession - %{xxx}sAbstractAccessLogValve.SessionIdElement write user session ID - %SAbstractAccessLogValve.StringElement write any stringAbstractAccessLogValve.ThreadNameElement write thread name - %IAbstractAccessLogValve.UserElement write remote user that was authenticated (if any), else '-' - %uAccessLogValve This is a concrete implementation ofAbstractAccessLogValve
that outputs the access log to a file.Constants Manifest constants for theorg.apache.catalina.valves
package.Constants.AccessLog CrawlerSessionManagerValve Web crawlers can trigger the creation of many thousands of sessions as they crawl a site which may result in significant memory consumption.ErrorReportValve Implementation of a Valve that outputs HTML error pages.ExtendedAccessLogValve An implementation of the W3c Extended Log File Format.ExtendedAccessLogValve.CookieElement ExtendedAccessLogValve.DateElement ExtendedAccessLogValve.PatternTokenizer ExtendedAccessLogValve.RequestAttributeElement ExtendedAccessLogValve.RequestHeaderElement ExtendedAccessLogValve.RequestParameterElement ExtendedAccessLogValve.ResponseAllHeaderElement write a specific response header - x-O(xxx)ExtendedAccessLogValve.ResponseHeaderElement ExtendedAccessLogValve.ServletContextElement ExtendedAccessLogValve.SessionAttributeElement ExtendedAccessLogValve.TimeElement HealthCheckValve Simple Valve that responds to cloud orchestrators health checks.JDBCAccessLogValve This Tomcat extension logs server access directly to a database, and can be used instead of the regular file-based access log implemented in AccessLogValve.JsonErrorReportValve Implementation of a Valve that outputs error jsons.LoadBalancerDrainingValve A Valve to detect situations where a load-balanced node receiving a request has been deactivated by the load balancer (JK_LB_ACTIVATION=DIS) and the incoming request has no valid session.PersistentValve Valve that implements per-request session persistence.RemoteAddrValve Concrete implementation ofRequestFilterValve
that filters based on the string representation of the remote client's IP address optionally combined with the server connector port number.RemoteCIDRValve RemoteHostValve Concrete implementation ofRequestFilterValve
that filters based on the remote client's host name optionally combined with the server connector port number.RemoteIpValve Tomcat port of mod_remoteip, this valve replaces the apparent client remote IP address and hostname for the request with the IP address list presented by a proxy or a load balancer via a request headers (e.g.RequestFilterValve Implementation of a Valve that performs filtering based on comparing the appropriate request property (selected based on which subclass you choose to configure into your Container's pipeline) against the regular expressions configured for this Valve.SemaphoreValve Implementation of a Valve that limits concurrency.SSLValve When using mod_proxy_http, the client SSL information is not included in the protocol (unlike mod_jk and mod_proxy_ajp).StuckThreadDetectionValve This valve allows to detect requests that take a long time to process, which might indicate that the thread that is processing it is stuck.ValveBase Convenience base class for implementations of the Valve interface.