项目需要做WebService接口,一开始也花了不少心思去了解学习,现在简单整理了下和大家分享
wsdlTojava有常用的有2种方式 :
1.执行CMD命令行生成
2.用axis官方提供的eclipse插件生成,一般eclipse有自带但是版本都比较低
此篇先介绍以命令行方式:
命令行生成的版本也有很多,建议去axis官方下载最新版axis2生成包
axis2官网:http://axis.apache.org/axis2/java/core/
1.下载生成ToJava工具包:http://mirrors.hust.edu.cn/apache//axis/axis2/java/core/1.6.2/axis2-1.6.2-bin.zip
2.下载axis2-1.6.2-bin.zip包之后解压不用修改任何地方,直接用cmd命令行方式进入到axis2-1.6.2\bin目录
3.执行以下命令:
wsdl生产客户端:
wsdl2java.bat -uri wsdl路径 -p 包名 -o 存放java文件的绝对路径
wsdl2java.bat -uri platformKmReceiver.wsdl -p com.eshore.itmp.model.bpmanagement.data.queryInterface.wapwg -o E:\WebService\axis2
wsdl生成服务端:
wsdl2java.bat -uri wsdl文件全路径 -p 包名 -d xmlbeans -ss -sd -ssi -o 生成的java代码存放路径
wsdl2java.bat -uri platformKmReceiver.wsdl -p com.eshore.itmp.model.web.webservice.test -ss -sd -ssi -o E:\WebService\axis2
AXIS生成命令参数:
-uri 生产代码*.wsdl文件路径,也可指定http路径
-o 输出java文件路径,最好写绝对路径,目录生成到
-l 生成的语言,默认为java
-p 生成的java文件的包路径
-a 生成异步模式的代码
-s 生成同步模式的代码
-t 为代码生成测试用例
-ss 生成服务端代码 默认不生成
-sd 生成服务描述文件 services.xml,仅与-ss一同使用
-d <databinding> 指定databingding,例如,adb,xmlbean,jibx,jaxme and jaxbri
-g 生成服务端和客户端的代码
-u 展开data-binding的类
-sn <service name> 选择WSDL中的一个service
-pn <port name> 当WSDL中有多个port时,指定其中一个port
-ssi 产生服务端接口类
-wv wsdl版本,可选版本有 : 2, 2.0, 1.1
-S 为生成的源码指定存储路径
-R 为生成的resources指定存储路径
-em 外部映射指定外部映射文件
-b 向后兼容,兼容版本1.1之后的版本
-sp 抑制的命名空间前缀,前缀(优化,减少了SOAP请求/响应大小)