- PR -

WSDL2Javaを実行後のコンパイル

1
投稿者投稿内容
pop_1
会議室デビュー日: 2004/01/06
投稿数: 2
投稿日時: 2004-01-06 21:15
表題について質問があります。
 以下の参照元記事で.NET WEBサーバーのasmxからWSDL2Javaコマンドでjavaファイルを生成しました。
http://www.atmarkit.co.jp/fdotnet/special/wse01/wse01_05.html

 生成された各javaファイルのいずれにもmain関数が含まれていなかったので、記載通りにmain関数をもつjavaファイル作成し、コンパイルしたところ、”パッケージが存在しません”というエラーにひっかかり途方に暮れています。
 現状、WSDL2Javaによって生成されたファイルは4個で、これらのファイル先頭部分に記述されているように packeage文を定義しました(恐らくこれを定義しないと...)。
 今回のようにコンパイルでエラーを回避した方がいらっしゃれば、情報をお願い致します。
 以上、宜しくお願いします。
 
pop_1
会議室デビュー日: 2004/01/06
投稿数: 2
投稿日時: 2004-01-07 13:24
 自己レスです。
 問題は解決しました。

 問題は恐らく、「生成された java ファイルのコンパイル方法」
が不明だったためだと思われます。

 解説ページでは java ファイルの生成までは言及していますが、
クライアント側のjavaファイル(DataGetter.java)をコンパイル
するまでに気が付いた点を記述します。

 環境変数で設定した AXIS_HOME(私の場合、D:\axis-1_1)
直下で各コマンドを実行しています。
1.Javaのソース・コード生成
 解説ページでは、以下のように説明されていましたが、これだと
 javaファイルが生成された時に階層が深くなるので stub用のデ
 ィレクトリを作成し、そこで作業を行うようにする。
「解説」
D:\axis-1_1>java org.apache.axis.wsdl.WSDL2Java http://localhost/WSE1/Service1.asmx?wsdl
「変更後」
D:\axis-1_1>java org.apache.axis.wsdl.WSDL2Java -p stub http://localhost/WSE1/Service1.asmx?wsdl

 クラスオブジェクト名が簡素化された状態で「D:\axis-1_1\stub」
 に生成される。

2.生成されたjavaソースコードのコンパイル
 生成された複数のjavaファイルを同時に全てコンパイルする。
 D:\axis-1_1> javac stub\*.java
 
3. 生成されたclassファイルの場所にパスを通す。
 D:\axis-1_1> set classpath=%CLASSPATH%;D:\axis-1_1\stub;

4.main関数を含むjavaファイルのコンパイル
  main関数を含むjavaファイルを「\stub」直下に作成しコンパイル
 する。
 D:\axis-1_1>javac stub\DataGetter.java

5.実行
 以下のコマンドで実行し、所望の結果を得る。
D:\axis-1_1>javac DataGetter

 間違いがあるかもしれませんが、その場合はご指摘の程
宜しくお願い致します。

 以上。

1

スキルアップ/キャリアアップ(JOB@IT)