CXF 生成Web Service Client(将WSDl 转化成 Java代码)

CXF 是什么?

Apache CXF一个开源的Service框架,它实现了JCP与Web Service中一些重要标准。CXF简化了构造,集成,面 向服务架构(SOA)业务组件与技术的灵活复用。在CXF中,Service使用WSDL标准定义并能够使用各种不同的消息 格式(或binding)和网络协议(transports)包括SOAP、XML(通过HTTP或JMS)进行访问。CXF同样支持多种model 如:JAX-WS,JBI,SCA和CORBA service。CXF设计成可灵活部署到各种容器中包括Spring-based,JBI,SCA, Servlet和J2EE容器。

CXF 与 Axis2的异同

Apache CXF Web 服务堆栈是来自 Apache Software Foundation 的另一替代选择,Axis2 堆栈也来自同一组织。尽管它们来自同一组织,Axis 2 和 CXF 就如何配置和交付 Web 服务采用完全不同的方法。

相对Axis2来说, CXF 与Spring 的整合会更容易一些。


下载CXF

CXF 项目的主页地址是:

http://cxf.apache.org/

下载地址是:

http://cxf.apache.org/download.html

可以下载 解压版也可以下载安装版的。 具体的下载页面如下:

这里下载解压版就可以了。

下载镜像地址:  http://mirror.bit.edu.cn/apache/cxf/3.0.1/apache-cxf-3.0.1.zip

解压后的目录结构如下:


bin目录下: 包含有一些 bat 的工具, 比如 wsdl2java.bat 可以把 wsdl 转化为java 代码。

lib 目录下有cxf 使用的一些jar 包, 在实际开发中在项目中要导入这些jar 包

其他的目录就不需要多介绍了。


使用CXF产生client 代码的步骤

如果现在有一个wsdl 服务的地址:  http://xxxx/xx?wsdl

在命令行模式下输入:

wsdl2java.bat  -p com.oscar999  -client -encoding utf-8 -noAddressBinding  http://xxxx/xx?wsdl

就可以产生代码了。

说明:

1.  注意命令行模式切换到 wsdl2java.bat 所在的目录(如果不是, 要写 .bat 所在的全路径)

2. -p 后面配置的是代码所在的包名


产生出来的有个类名比较长的以 _Client 结尾的java 文件 就是调用的测试文件, 里面包含 main 方法。




如果在eclipse 测试的话, 可以新建 一个java project, 把cxf lib 下所有的 jar 拷入到 项目的lib 路径下, 并放入build path 中。

然后把产生的java 文件,拷入到src 中就可以调用测试了。



你可能感兴趣的:(CXF 生成Web Service Client(将WSDl 转化成 Java代码))