Skip to main content
Version: 8.2405.x.x RR

MaintenanceFilter

The MaintenanceFilter allows displaying a maintenance page instead of the expected response from the back end. It is required that the maintenance page (hosted on a back end) contains two meta-tags defining the maintenance interval. The name of the meta-tags can be configured (see below). The content attribute of the meta-tag must contain a string defining a date. One of the following formats is supported:

  • Sun, 06 Nov 1994 08:49:37 GMT
  • Sunday, 06-Nov-94 08:49:37 GMT
  • Sun Nov 06 08:49:37 1994
Classname
ch::nevis::isiweb4::filter::maintenance::MaintenanceFilter
Library
libMaintenanceFilters.so.1

Configuration

MaintenanceServlet

  • Type: String
  • Usage Constraint: required
  • Syntax: <ServletName>:<uripath>
  • Defines the servlet that will return the maintenance page.
    • <ServletName>: The name of the configured servlet which will be used to contact a back end hosting the maintenance page.
    • <uripath>: URI used by the servlet to get the maintenance page.

UpdateInterval

  • Type: Integer [sec]
  • Usage Constraint: optional
  • Default: 600
  • Defines the update frequency of the maintenance page. As long as the system is in normal mode, it checks the MaintenanceServlet at the configured frequency. Once in maintenance mode, the system ignores the UpdateInterval parameter and calls the MaintenanceServlet on each request.

MetaTagStartName

  • Type: String
  • Usage Constraint: optional
  • Default: startTimestamp
  • The name of the meta-tag with the start-timestamp.

MetaTagEndName

  • Type: String
  • Usage Constraint: optional
  • Default: stopTimestamp
  • The name of the meta-tag with the end-timestamp.

AllowedContentType

  • Type: String
  • Usage Constraint: optional
  • Default: text/html
  • Defines which content types are allowed from a maintenance back end. The default regex type is PCRE(da).

Example

The filter in the sample code below enables the maintenance mode and specifies the servlet that provides data about the maintenance window.

<filter>
<filter-name>HttMaintenanceFilter</filter-name>
<filter-class>ch::nevis::isiweb4::filter::maintenance::MaintenanceFilter</filter-class>
<init-param>
<param-name>MaintenanceServlet</param-name>
<param-value>MaintenanceServlet:/maintenance/</param-value>
</init-param>
<init-param>
<param-name>UpdateInterval</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>MetaTagEndName</param-name>
<param-value>expires</param-value>
</init-param>
<init-param>
<param-name>MetaTagStartName</param-name>
<param-value>startTimestamp</param-value>
</init-param>
</filter>