Hitachi

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


10.6.2 発行されるメタデータ

リクエスト時の条件と,発行されるメタデータの対応を次の表に示します。

表10‒12 リクエストの条件と発行されるメタデータの対応

項番

リクエスト時の条件

発行されるメタデータ

Webサービスの適用可否

POJO

EJB

1

javax.jws.WebServiceアノテーション(Webサービス実装クラスの場合),またはjavax.xml.ws.WebServiceProviderアノテーション(プロバイダ実装クラスの場合)にwsdlLocation属性がある場合

wsdlLocation属性に指定された場所にあるWSDLファイルが返されます。

2

javax.jws.WebServiceアノテーション(Webサービス実装クラスの場合),またはjavax.xml.ws.WebServiceProviderアノテーション(プロバイダ実装クラスの場合)にwsdlLocation属性の指定はないが,デプロイされたWARファイルのWEB-INF/wsdlディレクトリにwsdl:service要素を持つWSDLファイルがある場合

デプロイされたWebアプリケーションのWEB-INF/wsdlディレクトリにあるWSDLファイルが返されます。

3

WSDLがWebアプリケーション内にない場合

(項番1および項番2以外の場合)

対象がWebサービス実装クラスの場合は,WSDLが新たに生成されて返されます。

対象がプロバイダ実装クラスの場合は,メタデータは発行されません。

(凡例)

○:適用されます。

−:適用されません。

注※

EJBのWebサービスの場合,Webサービス実装クラスだけに適用されます。

メタデータが発行される前提条件は,Webサービスのアプリケーションがエラーもなく,正常にデプロイされ実行が開始されている状態です。

メタデータの発行に関する注意事項を示します。

プロバイダ実装クラスの場合,基本的にWSDLを持つ必要がありません。また,このため,標準仕様でもjavax.xml.ws.WebServiceProviderアノテーションとWSDLのマッピング規則は定義されていません。そのため,メタデータを発行したい場合,作成したWSDLをWARファイルに適切に含めておく必要があります(Webサービス実装クラスの場合とは異なり,JAX-WSエンジンによって自動生成されません)。また,WARファイルにcosminexus-jaxws.xmlを含めない場合,javax.xml.ws.WebServiceProviderアノテーションのportName属性とtargetNamespace属性は必須です。WSDLの定義内容に従って,適切な値を設定してください。cosminexus-jaxws.xmlについては,「10.3 cosminexus-jaxws.xmlによるカスタマイズ」を参照してください。