16.1.4 SEIのメソッド名からオペレーションへのマッピング

SEIのメソッド名からWSDLのオペレーション(wsdl:operation要素のname属性)へのマッピングについて説明します。

<この項の構成>
(1) マッピング
(2) メソッド名の条件
(3) オーバーロードによる名前衝突

(1) マッピング

SEIのメソッド名とWSDLのオペレーションは,JAX-WS 2.2仕様に従ってマッピングされます。マッピング例を次の図に示します。

図16-3 SEIのメソッド名とオペレーションのマッピング例

[図データ]

SEIのメソッドを公開対象とするには,次に示す条件を満たす必要があります。

SEIのメソッド名からオペレーションへのマッピング規則を次に示します。

(2) メソッド名の条件

メソッド名には,次の表に示すすべての条件を満たす文字列を記述できます。

表16-4 メソッド名に記述できる文字列の条件

項番条件不正な文字列の例不正な文字列を指定した場合の動作
1半角英数字(0~9,A~Z,a~z),およびアンダースコア(_)だけを使用した文字列鈴木_sei動作は保証されません(エラーメッセージは出力されません)。
2Java言語仕様で定められているJava識別子の命名規則に従った文字列abstractcjaptコマンド実行時にコンパイルエラーとなり,終了します。

ただし,次に示すアノテーションをすべて使用する場合,Java言語仕様で定められているJava識別子の命名規則に従った文字列を記述できます。

(3) オーバーロードによる名前衝突

メソッドのオーバーロードを使用している場合,デフォルトマッピングでは名前衝突が発生するため,名前がユニークになるようにアノテーションでカスタマイズする必要があります。

オーバーロードによる名前衝突が発生する個所と,参照先を次の表に示します。

表16-5 オーバーロードによる名前衝突の発生個所と参照先

項番名前衝突の発生個所アノテーションの参照先
wrapperスタイルnon-wrapperスタイル
1オペレーション名16.2.6(2)
2inputのグローバル要素16.2.16(1)16.2.16(2)16.2.7(2)16.2.7(5)
3outputのグローバル要素16.2.17(1)16.2.17(2)16.2.8(2)16.2.8(4)
4リクエストbeanクラス名16.2.16(3)
5レスポンスbeanクラス名16.2.17(3)
注※
ローカル名または名前空間のどちらかをカスタマイズすれば,名前衝突は発生しません。