CXF框架介绍及Spring集成
1、CXF框架概念介绍
Apache CXF 是⼀个开源的 WebService 框架,CXF可以⽤来构建和开发 WebService,这些服务可以⽀持多种协议,⽐如:SOAP、POST/HTTP、HTTP ,CXF ⼤⼤简化了WebService并且可以天然地和 Spring 进⾏⽆缝集成。CXF是 Celtrix (ESB框架)和
XFire(webserivice)合并⽽成,核⼼是f.Bus(总线),类似于Spring的 ApplicationContext,CXF默认是依赖于Spring的,另CXF 发⾏包中的jar,如果全部放到lib中,需要 JDK1.6 及以上,否则会报JAX-WS版本不⼀致的问题。CXF 内置了Jetty服务器,它是servlet容器。
2、CXF框架特点
A、与Spring、Servlet做了⽆缝对接,cxf框架⾥⾯集成了Servlet容器Jetty
B、⽀持注解的⽅式来发布webservice
C、能够显⽰⼀个webservice的服务列表
spring framework是什么框架的
D、能够添加:输⼊、输出:输⼊⽇志信息、输出⽇志、⽤户权限认证的
3、使⽤CXF框架发布⼀个WebService
步骤⼀、
使⽤CXF框架发布WebService需导⼊CXF框架的相关Jar包,此处引⽤的cxf版本为3.1.8,可在官⽅下载该版本后导⼊lib⽬录中的所有jar包
步骤⼆、
发布⼀个带接⼝的开发语⾔排⾏榜的WebService,编写接⼝和实现类如下
步骤三、
JaxWsServerFactoryBean是ServerFactoryBean的⼦类,也是功能扩展类。该类可⽤来发布WebService,此类必须要在被发布为服务的类上添加@WebService注解,如果不加注解,虽然不出错,但也不会对外暴露任何⽅法。使⽤此类⽣成的wsdl⽂件更加规范,更重要的是可以通过添加拦截请求,具体实现代码以及代码解释如下:
4、使⽤CXF框架和Spring框架集成发布⼀个WebService
前⾯的服务发布包括创建服务类都是硬编码的⽅式,额是否可以使⽤配置的⽅式来发布服务类呢,答案是肯定的。这就要同Spring集成了, 由于CXF的项⽬已经集成了Spring(⾃带了Spring lib)所以CXF的服务都是在Spring的配置⽂件中完成的。
步骤⼀、
部署Spring环境,导⼊CXF和Spring的相关Jar包,此处导⼊的为3.1.8的cxf和4.2.3的spring版本
步骤⼆、
编写⼀个操作员⼯信息的接⼝和业务实现类,接⼝中包含添加和查询员⼯的⽅法
包结构和类编写代码如下图:
步骤三、
配置l⽂件,在l中配置Spring的,该⽤来⾃动装配ApplicationContext的配置信息。还要配置CXF的Servlet 信息,⽤来处理WebService的请求,具体配置信息如下,其中<url-pattern>/spring/*</url-pattern>为过滤路径,参见上⽂中的包结构,不同的包结构配置不同的过滤路径。
步骤四、
配置l⽂件,⾸先按如下截图添加必要的路径
接着配置业务实现类,即⽤来提供⽅法的EnployeeManagerImpl类。然后配置CXF,我们需要配置的东西有三样,分别是业务类接⼝,业务实现类和输⼊输出,完成之后便完成了CXF和Spring集成的WebService配置。
步骤五、
启动⼯程,当看到类似如下截图时,证明CXF和Spring集成的服务发布成功,并公布了服务中的⽅法,即上⽂中添加和查询员⼯的⽅法。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论