原文地址:http://blog.****.net/walkcode/article/details/7661674
有时在我们的开发中可能会有这种情况就是你要使用webservice但是对方没有给你提供java文件,可能就只会给你一个wsdl文件,这种文件和xml文件是比较相似。axis2也给我们提供了很好的工具如wsdl2java、java2wsdl。使用之前先下载axis2的开发包,在里面的bin目录里就有wsdl2java.bat的批处理文件。
1.配置java的环境变量,可以在wsdl2java.bat里配置或者在电脑上配置JAVA_HOME或者配置在path里
2.准备一个wsdl文件,xml文件也是OK的
3.进入axis2的bin目录执行如下的命令
-uri后面表示的是文件的路径,-o表示java文件的输出目录,-p后面可以加包名。还有一些命令大家上网找找就Ok了。
4.下面就是生成的java文件
以stub结尾的那个就是我们可以拿来使用的。很简单吧,有问题可以给我写评论噢。
---------------------------------------------------------------------------------------------------
使用wsdl2java把WSDL文件转成本地类,然后像本地类一样使用,即可。
这是像我这种懒人最喜欢的方式,仍然以前面的global weather report为例。
首先 java org.apache.axis.wsdl.WSDL2Java http://www.webservicex.net/globalweather.asmx.WSDL
原本的网址是http://www.webservicex.net/globalweather.asmx?WSDL,中间个各问号,但是Linux下面它不能解析,所以去掉问号,改为点号。
那么就会出现4个文件:
GlobalWeather.java GlobalWeatherLocator.java GlobalWeatherSoap.java GlobalWeatherSoapStub.java
其中GlobalWeatherSoap.java是我们最为关心的接口文件,如果你对RMI等SOAP实现的具体细节不感兴趣,那么你只需要看接口文件即可,在使用的时候,引入这个接口即可,就好像使用本地类一样。