クラス GenericFilterBean
- 実装されたすべてのインターフェース:
FilterEE
、Aware
、BeanNameAware
、DisposableBean
、InitializingBean
、EnvironmentAware
、EnvironmentCapable
、ServletContextAware
web.xml
の filter
タグ内の init-param
エントリ)を Bean プロパティとして扱う、Filter
EE の単純な基本実装。あらゆる型のフィルターのための便利なスーパークラス。構成パラメーターの型変換は自動的に行われ、対応する setter メソッドは変換された値で呼び出されます。サブクラスが必要なプロパティを指定することも可能です。Bean プロパティ setter に一致しないパラメーターは単に無視されます。
このフィルターは、Filter.doFilter(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse, jakarta.servlet.FilterChain)
メソッドを実装する必要があるサブクラスに実際のフィルタリングを任せます。
この汎用フィルター基本クラスは、Spring ApplicationContext
の概念に依存していません。フィルターは通常、独自のコンテキストをロードせず、フィルターの ServletContext
を介してアクセス可能な Spring ルートアプリケーションコンテキストからサービス Bean にアクセスします(WebApplicationContextUtils
を参照)。
フィールドサマリー
コンストラクターのサマリー
メソッドのサマリー
修飾子と型メソッド説明protected final void
addRequiredProperty
(StringSE property) サブクラスはこのメソッドを呼び出して、このプロパティ(公開する JavaBean プロパティと一致する必要がある)が必須であり、構成パラメーターとして提供する必要があることを指定できます。void
サブクラスのカスタム初期化を含む可能性のあるinitFilterBean()
メソッドを呼び出します。protected Environment
新しいStandardServletEnvironment
を作成して返します。void
destroy()
サブクラスはこれをオーバーライドして、カスタムフィルターのシャットダウンを実行できます。このフィルターに関連付けられているEnvironment
を返します。このフィルターの FilterConfig を使用できるようにします(ある場合)。protected StringSE
このフィルターの名前をサブクラスで利用できるようにします。protected ServletContextEE
このフィルターの ServletContext をサブクラスで使用できるようにします。final void
init
(FilterConfigEE filterConfig) このフィルターを初期化する標準的な方法。protected void
おそらくカスタムエディターを使用して、この GenericFilterBean の BeanWrapper を初期化します。protected void
サブクラスはこれをオーバーライドして、カスタム初期化を実行できます。void
setBeanName
(StringSE beanName) Spring Bean ファクトリで定義されている Bean 名を格納します。void
setEnvironment
(Environment environment) このフィルターを実行するEnvironment
を設定します。void
setServletContext
(ServletContextEE servletContext) Bean ファクトリが実行される ServletContext を格納します。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース jakarta.servlet.FilterEE から継承されたメソッド
doFilterEE
フィールドの詳細
logger
サブクラスで利用可能なロガー。
コンストラクターの詳細
GenericFilterBean
public GenericFilterBean()
メソッドの詳細
setBeanName
Spring Bean ファクトリで定義されている Bean 名を格納します。Bean として初期化する場合にのみ関連し、通常 FilterConfig インスタンスによって提供されるフィルター名へのフォールバックとして名前を持ちます。
- 次で指定:
- インターフェース
BeanNameAware
のsetBeanName
- パラメーター:
beanName
- ファクトリ内の Bean の名前。この名前は、ファクトリで使用される実際の Bean 名であり、最初に指定した名前とは異なる場合があります。特に内部 Bean 名の場合、実際の Bean 名は "#..." サフィックスを追加することで一意になります。必要に応じて、BeanFactoryUtils.originalBeanName(String)
メソッドを使用して、元の Bean 名(サフィックスなし)を抽出します。- 関連事項:
setEnvironment
このフィルターを実行するEnvironment
を設定します。ここで設定される環境は、デフォルトで提供される
StandardServletEnvironment
をオーバーライドします。この
Environment
オブジェクトは、このフィルターの init-parameters に渡されたリソースパスのプレースホルダーを解決するためにのみ使用されます。init-params を使用しない場合、このEnvironment
は基本的に無視できます。- 次で指定:
- インターフェース
EnvironmentAware
のsetEnvironment
getEnvironment
このフィルターに関連付けられているEnvironment
を返します。何も指定されていない場合、デフォルトの環境は
createEnvironment()
を介して初期化されます。- 次で指定:
- インターフェース
EnvironmentCapable
のgetEnvironment
- 導入:
- 4.3.9
createEnvironment
新しいStandardServletEnvironment
を作成して返します。サブクラスは、環境を構成したり、返された環境型を特殊化するために、これをオーバーライドできます。
- 導入:
- 4.3.9
setServletContext
Bean ファクトリが実行される ServletContext を格納します。Bean として初期化する場合にのみ関連し、通常 FilterConfig インスタンスによって提供されるコンテキストへのフォールバックとして ServletContext を持ちます。
- 次で指定:
- インターフェース
ServletContextAware
のsetServletContext
- パラメーター:
servletContext
- このオブジェクトによって使用される ServletContext オブジェクト- 関連事項:
afterPropertiesSet
サブクラスのカスタム初期化を含む可能性のあるinitFilterBean()
メソッドを呼び出します。標準の
init(FilterConfig)
メソッドが呼び出されない Bean として初期化する場合にのみ関連します。- 次で指定:
- インターフェース
InitializingBean
のafterPropertiesSet
- 例外:
ServletExceptionEE
- 関連事項:
destroy
public void destroy()サブクラスはこれをオーバーライドして、カスタムフィルターのシャットダウンを実行できます。メモ: このメソッドは、標準のフィルター破棄および Spring アプリケーションコンテキストでのフィルター Bean 破棄から呼び出されます。
このデフォルトの実装は空です。
- 次で指定:
- インターフェース
DisposableBean
のdestroy
- 次で指定:
- インターフェース
FilterEE
のdestroyEE
addRequiredProperty
サブクラスはこのメソッドを呼び出して、このプロパティ(公開する JavaBean プロパティと一致する必要がある)が必須であり、構成パラメーターとして提供する必要があることを指定できます。これは、サブクラスのコンストラクターから呼び出す必要があります。このメソッドは、FilterConfig インスタンスによって駆動される従来の初期化の場合にのみ関連します。
- パラメーター:
property
- 必須プロパティの名前
init
このフィルターを初期化する標準的な方法。このフィルターの Bean プロパティに構成パラメーターをマップし、サブクラスの初期化を呼び出します。- 次で指定:
- インターフェース
FilterEE
のinitEE
- パラメーター:
filterConfig
- このフィルターの構成- 例外:
ServletExceptionEE
- Bean プロパティが無効である(または必要なプロパティが欠落している)場合、またはサブクラスの初期化が失敗した場合。- 関連事項:
initBeanWrapper
おそらくカスタムエディターを使用して、この GenericFilterBean の BeanWrapper を初期化します。このデフォルトの実装は空です。
- パラメーター:
bw
- 初期化する BeanWrapper- 例外:
BeansException
- BeanWrapper メソッドによってスローされた場合- 関連事項:
initFilterBean
サブクラスはこれをオーバーライドして、カスタム初期化を実行できます。このフィルターのすべての Bean プロパティは、このメソッドが呼び出される前に設定されています。メモ: このメソッドは、Spring アプリケーションコンテキストでの標準のフィルター初期化およびフィルター Bean 初期化から呼び出されます。フィルター名と ServletContext はどちらの場合でも使用できます。
このデフォルトの実装は空です。
- 例外:
ServletExceptionEE
- サブクラスの初期化が失敗した場合- 関連事項:
getFilterConfig
このフィルターの FilterConfig を使用できるようにします(ある場合)。GenericServlet のgetServletConfig()
に類似しています。WebLogic 6.1 に付属するサーブレットフィルターバージョンの
getFilterConfig()
メソッドに類似するパブリック。- 戻り値:
- FilterConfig インスタンス、または使用可能な
null
がない場合 - 関連事項:
getFilterName
このフィルターの名前をサブクラスで使用できるようにします。GenericServlet のgetServletName()
に類似しています。デフォルトで FilterConfig のフィルター名を取得します。Spring アプリケーションコンテキストで Bean として初期化された場合、Bean ファクトリで定義されている Bean 名にフォールバックします。
- 戻り値:
- フィルター名、または使用できない場合は
null
- 関連事項:
getServletContext
このフィルターの ServletContext をサブクラスで使用できるようにします。GenericServlet のgetServletContext()
に類似しています。FilterConfig の ServletContext をデフォルトで使用します。Spring アプリケーションコンテキストで Bean として初期化された場合、Bean ファクトリが実行される ServletContext にフォールバックします。
- 戻り値:
- ServletContext インスタンス
- 例外:
IllegalStateExceptionSE
- ServletContext が利用できない場合- 関連事項: