パッケージ org.opengion.hayabusa.filter

# クラス CacheControlFilter

java.lang.Object
jakarta.servlet.GenericFilter
jakarta.servlet.http.HttpFilter
org.opengion.hayabusa.filter.CacheControlFilter

すべての実装されたインタフェース:
  `Filter`, `FilterConfig`, `Serializable`

@WebFilter(filterName="CacheControlFilter", urlPatterns="/*") public final class CacheControlFilter extends HttpFilter
CacheControlFilter は、Filter インターフェースを継承した アクセス制御クラスです。 web.xml で filter 設定することにより、Webアプリケーションへのアクセスを制御できます。 ※ @WebFilter アノテーションだけでは、上手く動かなかった。 本来は、org.apache.catalina.filters.ExpiresFilter を使用する所だが、単純に キャッシュさせる設定だけ入れたかっただけなので、こちらにした。 Cache-Control ヘッダーに対して、private,max-age=31536000,immutable を設定します。 対象は、.css , .js , .gif , .png です。 大文字、小文字の区別有で、ﾘｸｴｽﾄURIの後ろ一致で判定しています。 【WEB-INF/web.xml】 <filter> <filter-name>CacheControlFilter</filter-name> <filter-class>org.opengion.hayabusa.filter.CacheControlFilter</filter-class> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CacheControlFilter</filter-name> <url-pattern>/*;/url-pattern> </filter-mapping>

関連項目:
  - 直列化された形式
変更履歴:
  8.3.0.0 (2022/08/01) 新規追加
機能分類
  フィルター処理
導入されたバージョン:
  JDK17.0,

- ## ネストされたクラスの概要

  ネストされたクラス
  修飾子とタイプ
  クラス
  説明
  `(package private) static final class`
  `CacheControlFilter.CCFResponseWrapper`
  ResponseWrapper の継承クラス とりあえず、Wrapper 無しでもﾍｯﾀﾞｰの設定が出来たので、今は未使用とします。

- ## コンストラクタの概要

  コンストラクタ
  コンストラクタ
  説明
  `CacheControlFilter()`

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `void`
  `doFilter(ServletRequest req, ServletResponse res, FilterChain chain)`
  フィルター処理本体のメソッドです。
  `void`
  `init(FilterConfig filterConfig)`
  Filter インターフェースの init メソッド (何もしません)。

  ### クラスから継承されたメソッド jakarta.servlet.http.HttpFilter

  `doFilter`

  ### クラスから継承されたメソッド jakarta.servlet.GenericFilter

  `getFilterConfig, getFilterName, getInitParameter, getInitParameterNames, getServletContext, init`

  ### クラスから継承されたメソッド java.lang.Object

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

  ### インタフェースから継承されたメソッド jakarta.servlet.Filter

  `destroy`

- ## コンストラクタの詳細

  - ### CacheControlFilter

    public CacheControlFilter()

- ## メソッドの詳細

  - ### init

    public void init(FilterConfig filterConfig)
    Filter インターフェースの init メソッド (何もしません)。 実行時のURLを標準出力に出力します。
    定義:
      `init` インタフェース内 `Filter`
    オーバーライド:
      `init` クラス内 `GenericFilter`
    パラメータ:
      `filterConfig` - FilterConfigオブジェクト
    変更履歴:
      8.3.0.0 (2022/08/01) 新規追加

  - ### doFilter

    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException
    フィルター処理本体のメソッドです。
    定義:
      `doFilter` インタフェース内 `Filter`
    オーバーライド:
      `doFilter` クラス内 `HttpFilter`
    パラメータ:
      `req` - ServletRequestオブジェクト
      `res` - ServletResponseオブジェクト
      `chain` - FilterChainオブジェクト
    例外:
      `IOException` - 入出力エラーが発生した場合、throw されます。
      `ServletException` - サーブレット関係のエラーが発生した場合、throw されます。
    変更履歴:
      8.3.0.0 (2022/08/01) 新規追加