.NET Webサービスのスタブおよびスケルトンの作成

このトピックでは、Webサービス・スタブ/スケルトン・ウィザードを使用して、.NET Webサービスのスタブまたはスケルトンを作成する方法を説明します。

配列型を使用したスタブの作成

JDeveloperで、配列型ArrayListを使用する.NET Webサービスのスタブを作成すると、ウィザードで生成される関連するJavaBeanには不明な型が含まれます。たとえば、次のようになります。

private UnKnown[] m_Producers

生成されたコードをJavaBean内で編集し、UnKnown[]型を実行時に予想されるString[]などの型に変更してください。

別の.NET型を継承している.NET Webサービスのスタブの作成

JDeveloperで、別の.NET型を継承している型を含む.NET Webサービスのスタブを作成すると、継承された型に対して作成されるJavaBeanには、継承が正しく反映されません。この問題を解決するには、次に示す手順に従います。手順では、Bean1を拡張する、.NETの複合型であるBean1型およびBean2型を使用するWebサービスのスタブの作成方法を説明します。

  1. Webサービス・スタブ/スケルトン・ウィザードの起動後、Bean2を継承したJavaBeanを手動で作成します。
  2. Bean1複合型を返すWebサービスのスタブをコピーします。
  3. 元のスタブでBean1が使用されていたすべてのJavaBeanで、Bean2を使用できるようにコピーしたスタブを変更します。値を渡す場合には、パラメータの名前が一致することを確認してください。

.NET Webサービスからのスケルトンの作成

J2EE Webサービスでは、WebサービスをRPCサービスとして記述するWSDLドキュメントが使用されます。J2EE WebサービスのWSDLドキュメントでは、メソッドの一連のパラメータは、特殊な方法でエンコードされてXMLドキュメントに送信されます。これに対し、.NETのWSDLドキュメントでは、WebサービスをXMLドキュメントの受入れや返信を行うようなドキュメント・サービスとして記述します。また、.NET Webサービスのシグネチャは、Element doSth(Element sth)Element doSth()、またはvoid doSth(Element sth)である必要があります。

JDeveloperで.NET Webサービスのスケルトンを作成すると、同じサービスのスタブに対して生成される型ではなく、Element型のシグネチャが生成されます。スケルトンを使用するには、Elementを正しい型に変更し、新しいWebサービスの作成を続けます。