Red Hat Training

A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform

16.2. ハンドラーおよびハンドラーチェーンの概要

各エンドポイント設定は PRE および POST ハンドラーチェーンに関連付けることができます。各ハンドラーチェーンには JAXWS 準拠のハンドラーを含めることができます。送信メッセージの場合、PRE ハンドラーチェーンハンドラーは、@HandlerChain アノテーションなどの標準の JAXWS を使用してエンドポイントにアタッチされたハンドラーの前に実行されます。POST ハンドラーチェーンハンドラーは、通常のエンドポイントハンドラーの後に実行されます。受信メッセージには、逆が適用されます。JAX-WS は XML ベースの Web サービスの標準 API で、で http://jcp.org/en/jsr/detail?id=224 説明されています。
ハンドラーチェーンには、チェーンが起動するプロトコルを設定する protocol-bindings 属性も含まれます。
JAXWS ハンドラーは、ハンドラーチェーン内の子要素 ハンドラー です。ハンドラーは、ハンドラー クラス の完全修飾クラス名である class 属性を取ります。エンドポイントがデプロイされると、参照デプロイメントごとにそのクラスのインスタンスが作成されます。デプロイメントクラスローダーまたはモジュール org.jboss.as.webservices.server.integration のクラスローダーのいずれかがハンドラークラスをロードできる必要があります。

手順16.1 CLI で handler-chains およびハンドラーを追加する方法

  1. JBoss EAP CLI の起動
    EAP_HOME/bin/jboss-cli.sh
    
  2. JBoss CLI よりハンドラーチェーンおよびハンドラーを追加します。

    例16.1 ハンドラーチェーンの追加

    [standalone@localhost:9999 /] /subsystem=webservices/endpoint-config=Standard-Endpoint-Config/post-handler-chain=my-handlers:add(protocol-bindings="##SOAP11_HTTP")

    例16.2 ハンドラーの追加

    [standalone@localhost:9999 /] /subsystem=webservices/endpoint-config=Standard-Endpoint-Config/post-handler-chain=my-handlers/handler=foo-hander:add(class="org.jboss.ws.common.invocation.RecordingServerHandler")

    例16.3 ハンドラーの追加

    [standalone@localhost:9999 /] /subsystem=webservices/endpoint-config=Standard-Endpoint-Config/post-handler-chain=my-handlers/handler=bar-handler:add(class="com.arjuna.webservices11.wsarj.handler.InstanceIdentifierInHandler")
  3. サーバーをリロードします。
    [standalone@localhost:9999 /] reload
  4. handler-chain およびハンドラーが正しく追加されたことを確認します。

    例16.4 handler-chain の読み取り

    [standalone@localhost:9999 /] /profile=default/subsystem=webservices/endpoint-config=Standard-Endpoint-Config/post-handler-chain=my-handlers:read-resource

    例16.5 ハンドラーの読み取り

    [standalone@localhost:9999 /] /profile=default/subsystem=webservices/endpoint-config=Standard-Endpoint-Config/post-handler-chain=my-handlers/handler=bar-handler:read-resource
上記コマンドで使用されるオプションは、ハンドラーの追加または変更の必要に応じて変更できます。
JBoss EAP で利用可能なハンドラーについては、『API ドキュメント』 javadoc を参照してください。
ハンドラー、handler-chains、エンドポイント、および関連する問題に関する詳細は、『JBoss EAP『開発ガイド』』 を参照してください。 https://access.redhat.com/documentation/ja-jp/red_hat_jboss_enterprise_application_platform/?version=6.4