このトピックでは、Webサービス・スタブ/スケルトン・ウィザードを使用して、.NET Webサービスのスタブまたはスケルトンを作成する方法を説明します。
JDeveloperで、配列型ArrayList
を使用する.NET Webサービスのスタブを作成すると、ウィザードで生成される関連するJavaBeanには不明な型が含まれます。 次に例を示します。
private UnKnown[] m_Producers
生成されたコードをJavaBean内で編集し、UnKnown[]
型を実行時に予想されるString[]
などの型に変更してください。
JDeveloperで、別の.NET型を継承している型を含む.NET Webサービスのスタブを作成すると、継承された型に対して作成されるJavaBeanには、継承が正しく反映されません。 この問題を解決するには、次に示す手順に従います。 この手順では、Bean1
を拡張する、.NETの複合型であるBean1
型およびBean2
型を使用するWebサービスのスタブの作成方法を説明します。
Bean2
を継承したJavaBeanを手動で作成します。
Bean1
複合型を返すWebサービスのスタブをコピーします。
Bean1
が使用されていたすべてのJavaBeanで、Bean2
を使用できるようにコピーしたスタブを変更します。値を渡す場合には、パラメータの名前が一致することを確認してください。
.NET Webサービスのスタブやプロキシを作成する場合、Oracle Application ServerやOC4JのJSPからスタブを実行する前に、デプロイ用にライブラリを追加しないとスタブは作成できません。 これは、.NET Webサービスで使用され、かつJDeveloperから実行される全プロジェクトに存在するクラスが入っているライブラリjdev-rt.jar
が、OC4Jのクラスパス上に存在せず、JSPがクラスを実行しようとしてもそれを検出できないためです。
この問題発生を回避するためには、jdev-rt.jar
をデプロイメント・プロファイルの条件に加え、これをOC4Jにデプロイします。
.deploy
ノードをダブルクリックして、「JARデプロイメント・プロファイル設定」ダイアログを開きます。
jdev-rt.jar
を選択します。
同じ名前を持つ複数のメソッドを含む.NET Webサービスのスタブを作成する場合、スタブは1つのメソッドのみが表示されます。たとえば、次のとおりです。
public Float Add(Float a, Float b) throws Exception
オーバーロードされる別のメソッドを追加するためにスタブを手動で編集する必要があります。たとえば、次のとおりです。
public Float Add(Float a, Float b) throws Exception
public Integer Add(Integer a, Integer b) throws Exception
Copyright © 1997, 2004, Oracle. All rights reserved.