クラス AbstractHttpSessionApplicationInitializer
java.lang.ObjectSE
org.springframework.session.web.context.AbstractHttpSessionApplicationInitializer
- 実装済みのインターフェース一覧:
org.springframework.web.WebApplicationInitializer
@Order(100)
public abstract class AbstractHttpSessionApplicationInitializer
extends ObjectSE
implements org.springframework.web.WebApplicationInitializer
DelegatingFilterProxy を登録して、他の登録済み Filter より先に springSessionRepositoryFilter を使用します。AbstractHttpSessionApplicationInitializer(Class...) と一緒に使用すると、ContextLoaderListener も登録されます。AbstractHttpSessionApplicationInitializer() と一緒に使用すると、このクラスは通常、AbstractContextLoaderInitializer のサブクラスに加えて使用されます。 デフォルトでは、DelegatingFilterProxy は非同期リクエストのサポートに登録されていますが、isAsyncSessionSupported() および getSessionDispatcherTypes() をオーバーライドすることで有効にできます。
springSecurityFilterChain の前後の追加構成は、afterSessionRepositoryFilter(ServletContext) をオーバーライドすることで追加できます。
注意事項
AbstractDispatcherServletInitializer のサブクラスは、他の Filter の前にフィルターを登録します。これは、通常、AbstractDispatcherServletInitializer のサブクラスが最初に呼び出されるようにする必要があることを意味します。これは、AbstractDispatcherServletInitializer の Order または Ordered が AbstractSecurityWebApplicationInitializer のサブクラスよりも早くなるようにすることで実行できます。
フィールド概要
フィールドコンストラクター概要
コンストラクター修飾子コンストラクター説明protectedこのクラス以外の方法で Spring Session 構成がロードされることを前提とする新しいインスタンスを作成します。protectedAbstractHttpSessionApplicationInitializer(ClassSE<?>... configurationClasses) 指定されたクラスでContextLoaderListenerをインスタンス化する新しいインスタンスを作成します。方法の概要
修飾子と型メソッド説明protected voidafterSessionRepositoryFilter(jakarta.servlet.ServletContext servletContext) springSessionRepositoryFilter が追加された後に呼び出されます。protected final voidappendFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters) 生成されたデフォルトの名前getSessionDispatcherTypes()およびisAsyncSessionSupported()を使用して、既存のFilterの後に提供されたFilterを挿入します。protected voidbeforeSessionRepositoryFilter(jakarta.servlet.ServletContext servletContext) springSessionRepositoryFilter が追加される前に呼び出されます。protected StringSE<servlet-name>を返す場合は DispatcherServlet のWebApplicationContextを使用してDelegatingFilterProxyを検索し、null を返す場合は親ApplicationContextを使用します。protected EnumSetSE<jakarta.servlet.DispatcherType>springSessionRepositoryFilter の代わりにDispatcherTypeを取得します。protected final voidinsertFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters) 生成されたデフォルトの名前getSessionDispatcherTypes()およびisAsyncSessionSupported()を使用して、既存のFilterの前に提供されたFilterを挿入します。protected booleanspringSessionRepositoryFilter を非同期をサポートするものとしてマークする必要があるかどうかを決定します。voidonStartup(jakarta.servlet.ServletContext servletContext)
フィールドの詳細
DEFAULT_FILTER_NAME
Spring Session のリポジトリフィルターのデフォルト名。- 関連事項:
コンストラクターの詳細
AbstractHttpSessionApplicationInitializer
protected AbstractHttpSessionApplicationInitializer()このクラス以外の方法で Spring Session 構成がロードされることを前提とする新しいインスタンスを作成します。例: ユーザーはAbstractContextLoaderInitializerのサブクラスを使用してContextLoaderListenerを作成する場合があります。- 関連事項:
ContextLoaderListener
AbstractHttpSessionApplicationInitializer
指定されたクラスでContextLoaderListenerをインスタンス化する新しいインスタンスを作成します。- パラメーター:
configurationClasses- コンテキストの構成に使用される@Configurationクラス
メソッドの詳細
onStartup
public void onStartup(jakarta.servlet.ServletContext servletContext) - 次で指定:
- インターフェース
org.springframework.web.WebApplicationInitializerのonStartup
insertFilters
protected final void insertFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters) 生成されたデフォルトの名前getSessionDispatcherTypes()およびisAsyncSessionSupported()を使用して、既存のFilterの前に提供されたFilterを挿入します。- パラメーター:
servletContext- 使用するServletContextfilters- 登録するFilter
appendFilters
protected final void appendFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters) 生成されたデフォルトの名前getSessionDispatcherTypes()およびisAsyncSessionSupported()を使用して、既存のFilterの後に提供されたFilterを挿入します。- パラメーター:
servletContext- 使用するServletContextfilters- 登録するFilter
getDispatcherWebApplicationContextSuffix
<servlet-name>を返す場合は DispatcherServlet のWebApplicationContextを使用してDelegatingFilterProxyを検索し、null を返す場合は親ApplicationContextを使用します。例: AbstractDispatcherServletInitializer または AbstractAnnotationConfigDispatcherServletInitializer を使用していて、提供されたサーブレット名を使用している場合、このメソッドから「ディスパッチャー」を返し、DispatcherServlet の
WebApplicationContextを使用できます。- 戻り値:
- DispatcherServlet の
<servlet-name>は、そのWebApplicationContextを使用するか、null(デフォルト)は親ApplicationContextを使用します。
beforeSessionRepositoryFilter
protected void beforeSessionRepositoryFilter(jakarta.servlet.ServletContext servletContext) springSessionRepositoryFilter が追加される前に呼び出されます。- パラメーター:
servletContext-ServletContext
afterSessionRepositoryFilter
protected void afterSessionRepositoryFilter(jakarta.servlet.ServletContext servletContext) springSessionRepositoryFilter が追加された後に呼び出されます。- パラメーター:
servletContext-ServletContext
getSessionDispatcherTypes
springSessionRepositoryFilter の代わりにDispatcherTypeを取得します。- 戻り値:
- フィルターの
DispatcherType
isAsyncSessionSupported
protected boolean isAsyncSessionSupported()springSessionRepositoryFilter を非同期をサポートするものとしてマークするかどうかを決定します。デフォルトは true です。- 戻り値:
- springSessionRepositoryFilter が非同期をサポートするものとしてマークされる場合は true