16.2 JavaからWSDLへのマッピングのカスタマイズ

アノテーションを使用することで,JavaからWSDLへのマッピングをカスタマイズできます。

アノテーションを使用したカスタマイズ例を次の図に示します。

図16-11 アノテーションを使用したカスタマイズ例

[図データ]

cjaptコマンドまたはcjwsgenコマンドを実行すると,cjwsimportコマンドで自動的に付与されるjavax.xml.ws.WebEndpointおよびjavax.xml.ws.WebServiceClientアノテーションは無視されます(警告メッセージは出力されません)。また,非サポートのアノテーションを指定した場合も無視されます。このとき,Application ServerのJAX-WS機能以外が提供するアノテーションプロセッサでも非サポートであった場合,cjaptコマンドの警告メッセージが出力されます。

アノテーションには,SEIに定義できるもの,Webサービス実装クラスに定義できるもの,および両方に定義できるものがあります。ただし,javax.jws.WebServiceアノテーションのendpointInterface要素を使用しない場合は,Webサービス実装クラスの情報から抽象的な情報が抽出されて暗黙のSEIがあるものと見なされます。このときにかぎり,SEIに定義するアノテーションを,Webサービス実装クラスに定義することが許容されます。

アノテーションの要素を明示的にデフォルト値と同じ値でカスタマイズしても,要素値が指定されていない場合と同じように処理されます。

<この節の構成>
16.2.1 アノテーション一覧
16.2.2 com.sun.xml.ws.developer.StreamingAttachmentアノテーション
16.2.3 javax.jws.HandlerChainアノテーション
16.2.4 javax.jws.Onewayアノテーション
16.2.5 javax.jws.soap.SOAPBindingアノテーション
16.2.6 javax.jws.WebMethodアノテーション
16.2.7 javax.jws.WebParamアノテーション
16.2.8 javax.jws.WebResultアノテーション
16.2.9 javax.jws.WebServiceアノテーション
16.2.10 javax.xml.bind.annotation.XmlElementアノテーション
16.2.11 javax.xml.bind.annotation.XmlMimeTypeアノテーション
16.2.12 javax.xml.bind.annotation.XmlTypeアノテーション
16.2.13 javax.xml.ws.Actionアノテーション
16.2.14 javax.xml.ws.BindingTypeアノテーション
16.2.15 javax.xml.ws.FaultActionアノテーション
16.2.16 javax.xml.ws.RequestWrapperアノテーション
16.2.17 javax.xml.ws.ResponseWrapperアノテーション
16.2.18 javax.xml.ws.ServiceModeアノテーション
16.2.19 javax.xml.ws.soap.Addressingアノテーション
16.2.20 javax.xml.ws.soap.MTOMアノテーション
16.2.21 javax.xml.ws.WebFaultアノテーション
16.2.22 javax.xml.ws.WebServiceProviderアノテーション