鲁春利的工作笔记,好记性不如烂笔头
WebService只是向客户端暴露WSDL,客户端需要将WSDL转换为相应编程语言书写的代码。JAX-WS的各种实现都提供相应的工具进行WSDL与JAVA之间的相互转换,在CXF的bin目录下提供了多种转换的支持。E:\mvtech\apache-cxf-3.1.4\bin>ls -l|grep bat
-rwxrwxrwx 1 user group 1815 Oct 31 04:06 idl2wsdl.bat
-rwxrwxrwx 1 user group 1815 Oct 31 04:06 java2js.bat
-rwxrwxrwx 1 user group 1819 Oct 31 04:06 java2ws.bat
-rwxrwxrwx 1 user group 1789 Oct 31 04:06 mc.bat
-rwxrwxrwx 1 user group 1836 Oct 31 04:06 wadl2java.bat
-rwxrwxrwx 1 user group 1826 Oct 31 04:06 wsdl2corba.bat
-rwxrwxrwx 1 user group 1836 Oct 31 04:06 wsdl2java.bat
-rwxrwxrwx 1 user group 1786 Oct 31 04:06 wsdl2js.bat
-rwxrwxrwx 1 user group 1987 Oct 31 04:06 wsdl2service.bat
-rwxrwxrwx 1 user group 1823 Oct 31 04:06 wsdl2soap.bat
-rwxrwxrwx 1 user group 1823 Oct 31 04:06 wsdl2xml.bat
-rwxrwxrwx 1 user group 1821 Oct 31 04:06 wsdlvalidator.bat
-rwxrwxrwx 1 user group 1821 Oct 31 04:06 xsd2wsdl.bat
# 通过-h参数可以查看帮助
E:\mvtech\apache-cxf-3.1.4\bin>wsdl2java.bat -h
其中wsdl2java.bat可以通过使用URL?wsdl,将WSDL转换为Java类。
常用参数为:-encoding utf-8 指定生成的文件编码格式
-d path 指定生成的java文件存储路径
-p com.lucl.... 指定生成的java文件包名
wsdlurl 指定WSDL的文件路径,如
-client 生成客户端测试web service的代码;
-server 生成服务器启动web service的代码;
-impl 生成web service的实现代码;
-ant 生成build.xml文件;
-all 生成所有开始端点代码;
示例:
E:\mvtech\apache-cxf-3.1.4\bin>wsdl2java.bat -d F:\\ftpfile\\src -p package -V wsdlurl
Loading FrontEnd jaxws ...
Loading DataBinding jaxb ...
wsdl2java -d F:\\ftpfile\\src -p 包全限定名 -V http://localhost:9000/helloWorld?wsdl
wsdl2java - Apache CXF 3.1.4
E:\mvtech\apache-cxf-3.1.4\bin>
# 或者通过jdk自带的wsimport命令
wsimport -d F:/ftpfile/src -p com.lucl.apps.web.webservice.cxf.client
file:/F:/ftpfile/src/GBAService.wsdl
将生成的java类拷贝到eclipse中
HelloWorld.java class,对应WebSer