一、前言
Apache CXF 是由 Celtix 和 XFire 项目整合而生。 Apache CXF = Celtix + XFire,Apache CXF 的前身叫 Apache CeltiXfire,现在已经正式更名为 Apache CXF 了,以下简称为 CXF。CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用。
二、准备环境
1、cxf压缩包:在apache的网站下载CXF压缩包,下载地址如下
http://cxf.apache.org/download.html
最新版本为2.2.4,本文所适用的版本为2.1.7
2、开发工具:eclipse
3、jdk(要求jdk1.5及以上版本)
三、实践
1、在eclipse中新建动态web工程,假设工程名为CxfTest
2、添加CXF相关的包
将从apache网站上下载的压缩包解压,将解压后lib文件夹下的jar包添加到工程中,可以添加一个user Library,将lib下的所有jar包添加到该user Library中,然后在CxfTest工程中引用该user Library,如下图
其中cxflib为添加的user Library,里面包含了cxf压缩包lib目录下的所有jar文件
3、新建java类
在src目录下新建HelloWord.java和HelloWordImpl.java类,其中HelloWord.java为接口类,由HelloWordImpl.java类实现
HelloWord.java类内容如下
HelloWordImpl.java类内容如下
4、增加beans.xml文件
在web工程的WEB-INF目录下增加beans.xml文件,文件内容如下
5、修改web.xml文件
在web.xml文件中增加下面的内容
6、增加完以上文件后,最后工程结构如下
7、将工程加入tomcat中,启动tomcat,在IE地址栏输入如下地址
http://10.130.83.73:8080/CxfTest/
便可以访问,得到如下图所以的结果
四、总结
本文简单介绍了一下CXF,并通过一个简单的实例说明了如何利用CXF来开发web services,希望能够对CXF感兴趣的同事有所帮助,有什么问题的话可以一起研究!