javax.jws.WebMethodアノテーションは,オペレーションのマッピングをカスタマイズするときに使用できます。
javax.jws.WebMethodアノテーションを使用したカスタマイズ例を次の図に示します。
図16-14 javax.jws.WebMethodアノテーションを使用したカスタマイズ例
Webサービス実装クラスが持つpublicメソッドのうち,オペレーションとして公開したくないpublicメソッドは,exclude要素の要素値が"true"のjavax.jws.WebMethodアノテーションでアノテートすることで,マッピングされるオペレーションから除外できます。継承した親クラスが持つメソッドの場合,そのメソッドをオーバーライドし,exclude要素の要素値が"true"のjavax.jws.WebMethodアノテーションでアノテートすることで,マッピングされるオペレーションから除外できます。
exclude要素を指定するときの注意事項について説明します。
表16-13 アノテーションの指定と暗黙のSEIへのマッピング
項番 | Webサービス実装クラスのメソッド (WebMethodアノテーション) | 暗黙のSEIが持つメソッド |
---|---|---|
1 | なし | マッピングされます。 |
2 | あり(exclude要素なし) | マッピングされます。 |
3 | exclude=false | マッピングされます。 |
4 | exclude=true | マッピングされません。 |
operationName要素は,オペレーション名のマッピングをカスタマイズするときに指定します。operationName要素に要素値を指定すると,オペレーション名をマッピングのデフォルト値に持つメッセージ名がカスタマイズできます。non-wrapperスタイルの場合は,グローバル要素名およびパート名もカスタマイズできます。
operationName要素を指定するときの注意事項について説明します。
action要素は,SOAPオペレーションのアクションにマッピングされます。action要素には,RFC 2396で規定されたxsd:anyURIを満たす文字を指定できますが,指定した値はランタイムでは無視されます。