2011年11月29日火曜日

wsdl(xml)からjava(class)スタブ生成

久しぶりにコーディングモード
になっており、させています。

とある案件でsoap通信するものがあり、ひさしびりにwsdlからスタブ(class)を作るのに
苦戦したのでメモっておきます。

axisのバージョンは1.系~で、hoge.wsdlとします。

コマンドプロンプトで以下を設定(jdkパスとクラスパスを設定)
set JAVA_HOME=C:\iret\bin\jdk\1.5.0_00
set PATH=C:\iret\bin\jdk\1.5.0_00\jre\bin

不要なものもあるかもしれませんが、この辺のjarを全部指定することでエラー回避できました
set CLASSPATH=C:\batch\axis\XmlSchema-1.4.2.jar;C:\batch\axis\javamail-1.3.2.jar;C:\batch\axis\activation-1.0.2.jar;C:\batch\axis\xmlrpc-2.0.jar;C:\batch\axis\axis.jar;C:\batch\axis\axis-ant.jar;C:\batch\axis\commons-discovery-0.2.jar;C:\batch\axis\commons-logging-1.0.4.jar;C:\batch\axis\jaxrpc.jar;C:\batch\axis\log4j-1.2.8.jar;C:\batch\axis\saaj.jar;C:\batch\axis\wsdl4j-1.5.1.jar

上記で準備完了
あとは以下のコマンドで作成します。
java org.apache.axis.wsdl.WSDL2Java -p jp.co.iret.hoge.axis hoge.wsdl
「javaコマンド 実行するクラス -p パッケージ wsdlファイル」

*-pのあとは実際に配置するパッケージにしておくと
 できあがるclassもそのとおりに作られるのであとで書きなおしとかないので楽です。

超させている。。。


0 コメント: