Hitachi

Cosminexus V11 アプリケーションサーバ Webサービス開発ガイド


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

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

〈この項の構成〉

(1) マッピング

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

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

[図データ]

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

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

(2) メソッド名の条件

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

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

項番

条件

不正な文字列の例

不正な文字列を指定した場合の動作

1

半角英数字(0〜9,A〜Z,a〜z),およびアンダースコア(_)だけを使用した文字列

鈴木_sei

動作は保証されません(エラーメッセージは出力されません)。

2

Java言語仕様で定められているJava識別子の命名規則に従った文字列

abstract

javacコマンド実行時にコンパイルエラーとなり,終了します。

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

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

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

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

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

項番

名前衝突の発生個所

アノテーションの参照先

wrapperスタイル

non-wrapperスタイル

1

オペレーション名

16.2.6(2)

2

inputのグローバル要素

16.2.16(1)16.2.16(2)

16.2.7(2)16.2.7(5)

3

outputのグローバル要素

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)

注※

ローカル名または名前空間のどちらかをカスタマイズすれば,名前衝突は発生しません。