インターフェース EndpointInterceptor

すべての既知のサブインターフェース:
SmartEndpointInterceptorSmartSoapEndpointInterceptorSoapEndpointInterceptor
すべての既知の実装クラス:
AbstractFaultCreatingValidatingInterceptorAbstractLoggingInterceptorAbstractValidatingInterceptorAbstractWsSecurityInterceptorDelegatingSmartEndpointInterceptorDelegatingSmartSoapEndpointInterceptorEndpointInterceptorAdapterPayloadLoggingInterceptorPayloadRootSmartSoapEndpointInterceptorPayloadTransformingInterceptorPayloadValidatingInterceptorSoapActionSmartEndpointInterceptorSoapEnvelopeLoggingInterceptorWss4jSecurityInterceptor

public interface EndpointInterceptor
カスタマイズされたエンドポイント呼び出しチェーンを可能にするワークフローインターフェース。アプリケーションは、エンドポイントの特定のグループに対して既存またはカスタムのインターセプターをいくつでも登録して、各エンドポイントの実装を変更することなく、一般的な前処理動作を追加できます。

適切な EndpointAdapter がエンドポイント自体の呼び出しをトリガーする前に、EndpointInterceptor が呼び出されます。このメカニズムは、前処理の側面の広いフィールドに使用できます。認可チェック、またはメッセージヘッダーチェック用。その主な目的は、反復的なエンドポイントコードを除外できるようにすることです。

通常、インターセプターチェーンは EndpointMapping Bean ごとに定義され、その粒度を共有します。特定のインターセプターチェーンをハンドラーのグループに適用できるようにするには、1 つの EndpointMapping Bean を介して目的のハンドラーをマップする必要があります。インターセプター自体は、アプリケーションコンテキストで Bean として定義され、interceptors プロパティ(XML では <ref> の <list>)を介してマッピング Bean 定義によって参照されます。

導入:
1.0.0
作成者:
Arjen Poutsma
関連事項:
  • メソッドの詳細

    • handleRequest

      boolean handleRequest(MessageContext messageContext, ObjectSE endpoint) throws ExceptionSE
      受信リクエストメッセージを処理します。EndpointMapping が適切なエンドポイントオブジェクトを決定した後、EndpointAdapter がエンドポイントを呼び出す前に呼び出されます。

      MessageDispatcher は、任意の数のインターセプターで構成される呼び出しチェーンのエンドポイントを処理し、エンドポイント自体を最後に配置します。この方法では、各インターセプターはチェーンを中止することを決定でき、通常はカスタムレスポンスを作成します。

      パラメーター:
      messageContext - 受信リクエストメッセージが含まれています
      endpoint - 呼び出すエンドポイントを選択
      戻り値:
      true は、リクエストインターセプターチェーンの処理を続行します。false は、エンドポイントを呼び出さずに、リクエストエンドポイントチェーンのブロックを示します。
      例外:
      ExceptionSE - エラーの場合
      関連事項:
    • handleResponse

      boolean handleResponse(MessageContext messageContext, ObjectSE endpoint) throws ExceptionSE
      発信レスポンスメッセージを処理します。EndpointAdapter が実際にエンドポイントを呼び出した後に呼び出されます。新しいヘッダーなどを追加することにより、レスポンスがある場合はそれを操作できます。

      MessageDispatcher は、任意の数のインターセプターで構成される呼び出しチェーンのエンドポイントを処理し、エンドポイント自体を最後に配置します。このメソッドを使用すると、各インターセプターは呼び出しを後処理し、チェーンの実行とは逆の順序で適用できます。

      メモ: このインターセプターの handleRequest(org.springframework.ws.context.MessageContext, java.lang.Object) メソッドが正常に完了した場合にのみ呼び出されます。

      パラメーター:
      messageContext - リクエストメッセージとレスポンスメッセージの両方が含まれています
      endpoint - 呼び出すエンドポイントを選択
      戻り値:
      true は、レスポンスインターセプターチェーンの処理を続行します。レスポンスエンドポイントチェーンのブロッキングを示す false
      例外:
      ExceptionSE - エラーの場合
      関連事項:
    • handleFault

      boolean handleFault(MessageContext messageContext, ObjectSE endpoint) throws ExceptionSE
      発信レスポンス障害を処理します。EndpointAdapter が実際にエンドポイントを呼び出した後に呼び出されます。新しいヘッダーなどを追加することにより、レスポンスがある場合はそれを操作できます。

      MessageDispatcher は、任意の数のインターセプターで構成される呼び出しチェーンのエンドポイントを処理し、エンドポイント自体を最後に配置します。このメソッドを使用すると、各インターセプターは呼び出しを後処理し、チェーンの実行とは逆の順序で適用できます。

      メモ: このインターセプターの handleRequest(org.springframework.ws.context.MessageContext, java.lang.Object) メソッドが正常に完了した場合にのみ呼び出されます。

      パラメーター:
      messageContext - リクエストメッセージとレスポンスメッセージの両方が含まれている場合、レスポンスには障害が含まれている必要があります
      endpoint - 呼び出すエンドポイントを選択
      戻り値:
      true は、レスポンスインターセプターチェーンの処理を続行します。false は、レスポンスハンドラーチェーンのブロックを示します。
      例外:
      ExceptionSE
    • afterCompletion

      void afterCompletion(MessageContext messageContext, ObjectSE endpoint, ExceptionSE ex) throws ExceptionSE
      リクエストとレスポンス(障害)の処理が完了した後のコールバック。エンドポイント呼び出しの結果で呼び出されるため、適切なリソースのクリーンアップが可能になります。

      メモ: このインターセプターの handleRequest(org.springframework.ws.context.MessageContext, java.lang.Object) メソッドが正常に完了した場合にのみ呼び出されます。

      handleResponse(org.springframework.ws.context.MessageContext, java.lang.Object) メソッドと同様に、このメソッドはチェーンの各インターセプターで逆の順序で呼び出されるため、最初のインターセプターが最後に呼び出されます。

      パラメーター:
      messageContext - リクエストメッセージとレスポンスメッセージの両方が含まれている場合、レスポンスには障害が含まれている必要があります
      endpoint - 呼び出すエンドポイントを選択
      ex - ハンドラーの実行時にスローされる例外(ある場合)
      例外:
      ExceptionSE - エラーの場合
      導入:
      2.0.2