JAX-WS 2.2仕様は,論理ハンドラとプロトコルハンドラの二つを定義しています。また,プロトコルハンドラは,SOAPハンドラを定義しています。それぞれのハンドラの説明を次に示します。
ハンドラの関係(クラス階層)を次の図に示します。
図36-2 ハンドラのクラス階層
Application ServerのJAX-WS機能では,論理ハンドラとSOAPハンドラを使用できます。
論理ハンドラでもSOAPハンドラでもないハンドラをハンドラチェインに設定した場合,Webサービス側のJAX-WSエンジンでは,Webサービス初期化時にログおよび標準エラー出力にエラーメッセージが出力されます(KDJW00009-E)。Webサービスクライアント側のJAX-WSエンジンでは,ポートを取得しようとしたときに,javax.xml.ws.WebServiceExceptionがスローされます。
javax.xml.ws.handler.LogicalHandlerインタフェースおよびjavax.xml.ws.handler.soap.SOAPHandlerインタフェースの両方を実装するハンドラ(論理ハンドラでもSOAPハンドラでもあるハンドラ)は論理ハンドラと見なされます。