クラス SimpleServletPostProcessor

java.lang.ObjectSE
org.springframework.web.servlet.handler.SimpleServletPostProcessor
実装されたすべてのインターフェース:
AwareBeanPostProcessorDestructionAwareBeanPostProcessorServletConfigAwareServletContextAware

public class SimpleServletPostProcessor extends ObjectSE implements DestructionAwareBeanPostProcessor, ServletContextAware, ServletConfigAware
ServletEE インターフェースを実装する Bean に初期化と破棄のコールバックを適用する BeanPostProcessor

Bean インスタンスの初期化後、サーブレットの init メソッドは、サーブレットの Bean 名とそれが実行されている ServletContext を含む ServletConfig で呼び出されます。

Bean インスタンスを破棄する前に、サーブレット destroy が呼び出されます。

このポストプロセッサーはサーブレット初期化パラメーターをサポートしないことに注意してください。サーブレットインターフェースを実装する Bean インスタンスは、他の Spring Bean と同じように、つまりコンストラクター引数または Bean プロパティを介して構成されている必要があります。

プレーンサーブレットコンテナーで、Spring コンテキストで Bean としてサーブレット実装を再利用するには、サーブレット初期化パラメーターを Bean プロパティとして適用する Spring の HttpServletBean 基本クラスから派生し、標準サーブレットと Spring Bean 初期化スタイルの両方をサポートすることを検討してください。

または、Spring の ServletWrappingController でサーブレットをラップすることを検討してください。これは、サーブレットの初期化パラメーターなどを指定できる既存のサーブレットクラスに特に適しています。

導入:
1.1.5
作成者:
Juergen Hoeller
関連事項:
  • コンストラクターの詳細

    • SimpleServletPostProcessor

      public SimpleServletPostProcessor()
  • メソッドの詳細

    • setUseSharedServletConfig

      public void setUseSharedServletConfig(boolean useSharedServletConfig)
      setServletConfig を介して渡された共有 ServletConfig オブジェクトを使用するかどうかを設定します(使用可能な場合)。

      デフォルトは "true" です。この設定を "false" にして、Bean 名をサーブレット名としてモック ServletConfig オブジェクトに渡し、現在の ServletContext を保持します。

      関連事項:
    • setServletContext

      public void setServletContext(ServletContextEE servletContext)
      インターフェースからコピーされた説明: ServletContextAware
      このオブジェクトが実行される ServletContextEE を設定します。

      通常の Bean プロパティの設定後、InitializingBean の afterPropertiesSet またはカスタム init メソッドのような初期コールバックの前に呼び出されます。ApplicationContextAware の setApplicationContext の後に呼び出されます。

      次で指定:
      インターフェース ServletContextAwaresetServletContext 
      パラメーター:
      servletContext - このオブジェクトによって使用される ServletContext オブジェクト
      関連事項:
    • setServletConfig

      public void setServletConfig(ServletConfigEE servletConfig)
      インターフェースからコピーされた説明: ServletConfigAware
      このオブジェクトが実行される ServletConfigEE を設定します。

      通常の Bean プロパティの設定後、InitializingBean の afterPropertiesSet またはカスタム init メソッドのような初期コールバックの前に呼び出されます。ApplicationContextAware の setApplicationContext の後に呼び出されます。

      次で指定:
      インターフェース ServletConfigAwaresetServletConfig 
      パラメーター:
      servletConfig - このオブジェクトによって使用される ServletConfigEE
      関連事項:
    • postProcessBeforeInitialization

      public ObjectSE postProcessBeforeInitialization(ObjectSE bean, StringSE beanName) throws BeansException
      インターフェースからコピーされた説明: BeanPostProcessor
      Bean 初期化コールバック(InitializingBean の afterPropertiesSet またはカスタム init メソッドなど)のに、この BeanPostProcessor を指定された新しい Bean インスタンス適用します。Bean にはすでにプロパティ値が入力されています。返された Bean インスタンスは、元のラッパーの可能性があります。

      デフォルトの実装は、指定された bean をそのまま返します。

      次で指定:
      インターフェース BeanPostProcessorpostProcessBeforeInitialization 
      パラメーター:
      bean - 新しい Bean インスタンス
      beanName - Bean の名前
      戻り値:
      使用する Bean インスタンス。元のインスタンスまたはラップされたインスタンス。null の場合、後続の BeanPostProcessors は呼び出されません
      例外:
      BeansException - エラーの場合
      関連事項:
    • postProcessAfterInitialization

      public ObjectSE postProcessAfterInitialization(ObjectSE bean, StringSE beanName) throws BeansException
      インターフェースからコピーされた説明: BeanPostProcessor
      Bean 初期化コールバック(InitializingBean の afterPropertiesSet またはカスタム init メソッドなど)のに、この BeanPostProcessor を新しい Bean インスタンス適用します。Bean にはすでにプロパティ値が入力されています。返された Bean インスタンスは、元のラッパーの可能性があります。

      FactoryBean の場合、このコールバックは、FactoryBean インスタンスと、FactoryBean によって作成されたオブジェクト(Spring 2.0 以降)の両方に対して呼び出されます。ポストプロセッサーは、対応する bean instanceof FactoryBean チェックを介して、FactoryBean または作成されたオブジェクトのいずれか、あるいはその両方に適用するかどうかを決定できます。

      このコールバックは、他のすべての BeanPostProcessor コールバックとは異なり、InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation(java.lang.Class<?>, java.lang.String) メソッドによってトリガーされた短絡後にも呼び出されます。

      デフォルトの実装は、指定された bean をそのまま返します。

      次で指定:
      インターフェース BeanPostProcessorpostProcessAfterInitialization 
      パラメーター:
      bean - 新しい Bean インスタンス
      beanName - Bean の名前
      戻り値:
      使用する Bean インスタンス。元のインスタンスまたはラップされたインスタンス。null の場合、後続の BeanPostProcessors は呼び出されません
      例外:
      BeansException - エラーの場合
      関連事項:
    • postProcessBeforeDestruction

      public void postProcessBeforeDestruction(ObjectSE bean, StringSE beanName) throws BeansException
      インターフェースからコピーされた説明: DestructionAwareBeanPostProcessor
      指定された Bean インスタンスを破棄する前に、この BeanPostProcessor を適用します (たとえば、カスタム破棄コールバックを呼び出します)。

      DisposableBean の destroy およびカスタム destroy メソッドのように、このコールバックは、コンテナーがライフサイクルを完全に管理する Bean にのみ適用されます。これは通常、シングルトンとスコープ Bean の場合です。

      次で指定:
      インターフェース DestructionAwareBeanPostProcessorpostProcessBeforeDestruction 
      パラメーター:
      bean - 破棄される Bean インスタンス
      beanName - Bean の名前
      例外:
      BeansException - エラーの場合
      関連事項:
    • requiresDestruction

      public boolean requiresDestruction(ObjectSE bean)
      インターフェースからコピーされた説明: DestructionAwareBeanPostProcessor
      指定された Bean インスタンスがこのポストプロセッサーによる破棄を必要とするかどうかを判断します。

      デフォルトの実装は true を返します。DestructionAwareBeanPostProcessor の 5 以前の実装がこのメソッドの具体的な実装を提供しない場合、Spring は true も暗黙のうちに想定します。

      次で指定:
      インターフェース DestructionAwareBeanPostProcessorrequiresDestruction 
      パラメーター:
      bean - チェックする Bean インスタンス
      戻り値:
      DestructionAwareBeanPostProcessor.postProcessBeforeDestruction(java.lang.Object, java.lang.String) が最終的にこの Bean インスタンスのために呼び出されることになっている場合は true、または不要な場合は false