16.1.2 Webサービス実装クラスからSEIへのマッピング
Webサービス実装クラスからSEIへのマッピングに当たり,前提となる条件および留意点について説明します。
(1) Webサービス実装クラスの条件
Webサービス実装クラスの条件を示します。
-
SEIのすべてのメソッドを実装する必要があります。
-
Webサービスのオペレーションとして,Objectクラスのfinalizeメソッドをオーバーライドするようなfinalizeメソッドは定義できません。
-
publicなデフォルトコンストラクタを定義する必要があります。
-
javax.jws.WebServiceアノテーションを記述する必要があります。javax.jws.WebServiceアノテーションを記述していない場合は,Webサービス実装クラスではないと判断されます。
-
javax.jws.WebServiceアノテーションをstaticなインナークラスで定義できます。
-
Webサービス実装クラスのアクセス修飾子はpublicにしてください。finalやabstractは指定できません。
(2) javax.jws.WebServiceアノテーションのendpointInterface要素の利用
Webサービス実装クラスからSEIへのマッピングでは,javax.jws.WebServiceアノテーションのendpointInterface要素を利用して,Webサービス実装クラスとSEIを関連づけることができます。
Webサービス実装クラスだけ定義する場合,endpointInterface要素は使用しません。この場合,Webサービス実装クラスが持つ情報から,SEIに定義する抽象的な情報が抽出され,仮想のSEIがあるものと見なされます(暗黙のSEI)。
javax.jws.WebServiceアノテーションのendpointInterface要素については,「16.2.9 javax.jws.WebServiceアノテーション」を参照してください。