クラス 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() をオーバーライドすることで有効にできます。

afterSessionRepositoryFilter(ServletContext) をオーバーライドすることにより、springSecurityFilterChain の前後に追加の構成を追加できます。

注意事項

AbstractDispatcherServletInitializer のサブクラスは、他の Filter の前にフィルターを登録します。これは、通常、AbstractDispatcherServletInitializer のサブクラスが最初に呼び出されるようにする必要があることを意味します。これは、AbstractDispatcherServletInitializer の Order または Ordered が AbstractSecurityWebApplicationInitializer のサブクラスよりも早くなるようにすることで実行できます。

  • フィールドサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final StringSE
    Spring Session のリポジトリフィルターのデフォルト名。
  • コンストラクターのサマリー

    コンストラクター
    修飾子
    コンストラクター
    説明
    protected
    このクラス以外の方法で Spring Session 構成がロードされることを前提とする新しいインスタンスを作成します。
    protected
    指定されたクラスで ContextLoaderListener をインスタンス化する新しいインスタンスを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    protected void
    afterSessionRepositoryFilter(jakarta.servlet.ServletContext servletContext)
    springSessionRepositoryFilter が追加された後に呼び出されます。
    protected final void
    appendFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters)
    生成されたデフォルトの名前 getSessionDispatcherTypes() および isAsyncSessionSupported() を使用して、既存の Filter の後に提供された Filter を挿入します。
    protected void
    beforeSessionRepositoryFilter(jakarta.servlet.ServletContext servletContext)
    springSessionRepositoryFilter が追加される前に呼び出されます。
    protected StringSE
    <servlet-name> を返す場合は DispatcherServlet の WebApplicationContext を使用して DelegatingFilterProxy を検索し、null を返す場合は親 ApplicationContext を使用します。
    protected EnumSetSE<jakarta.servlet.DispatcherType>
    springSessionRepositoryFilter の DispatcherType を取得します。
    protected final void
    insertFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters)
    生成されたデフォルトの名前 getSessionDispatcherTypes() および isAsyncSessionSupported() を使用して、既存の Filter の前に提供された Filter を挿入します。
    protected boolean
    springSessionRepositoryFilter をサポート非同期としてマークする必要があるかどうかを決定します。
    void
    onStartup(jakarta.servlet.ServletContext servletContext)

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

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • フィールドの詳細

    • DEFAULT_FILTER_NAME

      public static final StringSE DEFAULT_FILTER_NAME
      Spring Session のリポジトリフィルターのデフォルト名。
      関連事項:
  • コンストラクターの詳細

    • AbstractHttpSessionApplicationInitializer

      protected AbstractHttpSessionApplicationInitializer()
      このクラス以外の方法で Spring Session 構成がロードされることを前提とする新しいインスタンスを作成します。例: ユーザーは AbstractContextLoaderInitializer のサブクラスを使用して ContextLoaderListener を作成する場合があります。
      関連事項:
      • ContextLoaderListener
    • AbstractHttpSessionApplicationInitializer

      protected AbstractHttpSessionApplicationInitializer(ClassSE<?>... configurationClasses)
      指定されたクラスで ContextLoaderListener をインスタンス化する新しいインスタンスを作成します。
      パラメーター:
      configurationClasses - コンテキストの構成に使用される @Configuration クラス
  • メソッドの詳細

    • onStartup

      public void onStartup(jakarta.servlet.ServletContext servletContext)
      次で指定:
      インターフェース org.springframework.web.WebApplicationInitializeronStartup 
    • insertFilters

      protected final void insertFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters)
      生成されたデフォルトの名前 getSessionDispatcherTypes() および isAsyncSessionSupported() を使用して、既存の Filter の前に提供された Filter を挿入します。
      パラメーター:
      servletContext - 使用する ServletContext 
      filters - 登録する Filter
    • appendFilters

      protected final void appendFilters(jakarta.servlet.ServletContext servletContext, jakarta.servlet.Filter... filters)
      生成されたデフォルトの名前 getSessionDispatcherTypes() および isAsyncSessionSupported() を使用して、既存の Filter の後に提供された Filter を挿入します。
      パラメーター:
      servletContext - 使用する ServletContext 
      filters - 登録する Filter
    • getDispatcherWebApplicationContextSuffix

      protected StringSE 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

      protected EnumSetSE<jakarta.servlet.DispatcherType> getSessionDispatcherTypes()
      springSessionRepositoryFilter の DispatcherType を取得します。
      戻り値:
      フィルターの DispatcherType 
    • isAsyncSessionSupported

      protected boolean isAsyncSessionSupported()
      springSessionRepositoryFilter をサポート非同期としてマークする必要があるかどうかを決定します。デフォルトは true です。
      戻り値:
      springSessionRepositoryFilter をサポート非同期としてマークする必要がある場合は true