【JAVA】 Apache CXF生成 Web Service 服务端代码

CXF

  Apache CXF = Celtix + XFire。CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用。 
  需求是,利用CXF生成webservice服务端代码,导出为java文件。

生成 webservice 服务端代码

1. 下载安装CXF

(1)下载https://cxf.apache.org/cxf-2613-release-notes.html,这里是apache-cxf-2.6.13.zip 
(2)将CXF解压到某一目录,如F:\summerProjects\压缩包\cxf\apache-cxf-2.6.13

2. 环境变量配置

(1)增加:CXF_HOME=F:\summerProjects\压缩包\cxf\apache-cxf-2.6.13
(2)编辑:在path后面加上 %CXF_HOME%\bin; 
(3)测试配置结果:在dos窗口输入“wsdl2java”,配置成功的结果如下: 

如果你执行wsdl命令出现下面的提示:

即为配置失败。

原因可能有:

1、配置有错误

2、JAVA_HOME有多个

3、没有配置JAVA_HOME变量时,Path中jdk的bin目录有多个

注意:安装jdk时可能自己默认配置过Path,但是自己又配置一遍。【开始我的配置就是这种情况!!!】

3. 运行wsdl2java工具,导出java文件

在dos窗口输入以下命令:

wsdl2java -p com -d F:\workSpaces\MathUtilityClient\Service -client http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl

说明:1、-p <生成的代码的包名>

           2、-d <生成代码所在的目录>

           3、-client 生成客户端测试web service的代码

其他

(1)wsimport   <—–>   wsdl2java 
JDK:提供了命令 ” wsimport ” ,用于将WebService生成客户端代码 
CXF:提供了命令 ” wsdl2java ” ,用于根据WSDL生成客户端代码 
(2)wsdl2java用法

-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.

其他wsdl2java参数解释见链接。

 

参考:

https://blog.csdn.net/LJL55555/article/details/80337775

https://blog.csdn.net/panshoujia/article/details/78899160

猜你喜欢

转载自blog.csdn.net/feng_zhiyu/article/details/81283378