CXF
方法一
1.解压apache-cxf-2.2.5
2.打开命令行,进入D:\aaa\webservices\cxf\apache-cxf-2.2.5\bin下(cd \d d:\aaa\webservices\cxf\apache-cxf-2.2.5\bin)
3.输入命令 wsdl2java -p com.test ////////wsdl地址/////////
方法二
1.在bin目录下新建wsdltojava.bat
set CXF_Servlet= http://demo.1hai.cn/service/EhiService.svc?wsdl wsdl2java -p com.aa %CXF_Servlet%
注:wsdl2java用法:
wsdl2java -p com -d src -all aa.wsdl
-p 指定其wsdl的命名空间,也就是要生成代码的包名:
-d 指定要产生代码所在目录
-client 生成客户端测试web service的代码
-server 生成服务器启动web service的代码
-impl 生成web service的实现代码
-ant 生成build.xml文件
-all 生成所有开始端点代码:types,service proxy,service interface,server mainline,client mainline,implementation object,and an Ant build.xml file.
AXIS
1.解压axis 1.4
2.新建 wsdltojava.bat
set Axis_Lib=D:\aaa\webservices\axis\axis-1_4\lib set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib% set Axis_Servlet= http://demo.1hai.cn/service/EhiService.svc?wsdl %Java_Cmd% org.apache.axis.wsdl.WSDL2Java -u %Axis_Servlet% -p com.aa
3.双击执行
总结:cxf的wsdl2java工具生成客户端代码,生成的所有自定义的dto类的成员变量,都被映射成 JAXBElement<T>的类型了,用起来很麻烦,axis生成的映射,就像服务端那样的POJO,直接就可以操作java的类型不用在 JAXBElement之间再做转换。