webService之(三)CXF服务端

CXF是apache旗下的开源框架,由Celtix + XFire这两门经典的框架合成,是一套非常流行的webService框架。
它提供了JAX-WS的全面支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来
轻松地实现 WebServices的发布和使用,同时它能与spring进行完美结合。

CXF包含了大量的功能特性,但是主要集中在以下几个方面:
1、支持 Web Services 标准:CXF 支持多种WebServices 标准,包含SOAP、Basic Profile、WS-Addressing、WS-Policy、WS-ReliableMessaging 和 WS-Security。
2、Frontends:CXF支持多种“Frontend”编程模型,CXF实现了JAX-WS API,它也包含一个“simple frontend”允许客户端和EndPoint 的创建,而不需要Annotation注解。CXF既支持WSDL优先开发,也支持从 Java 的代码优先开发模式。
3、容易使用: CXF设计得更加直观与容易使用。有大量简单的 API 用来快速地构建代码优先的Services,各种Maven 的插件也使集成更加容易,支持JAX-WS API ,支持 Spring更加简化的XML配置方式,等等。
4、支持二进制和遗留协议:CXF的设计是一种可插拨的架构,既可以支持XML,也可以支持非 XML 的类型绑定,比如:JSON和CORBA。
在apache cxf官网提供了CXF较全面的帮助文档,请参考地址:http://cxf.apache.org/docs/index.html

本文作为笔记,将记录CXF最基本的用法,项目使用maven管理

<dependency>
	<groupId>org.apache.cxf</groupId>
	<artifactId>cxf-rt-frontend-jaxws</artifactId>
	<version>${cxf.version}</version>
</dependency>
<dependency>
	<groupId>org.apache.cxf</groupId>
	<artifactId>cxf-rt-transports-http-jetty</artifactId>
	<version>${cxf.version}</version>
</dependency>

或去官网下载cxf压缩文件:http://cxf.apache.org/download.html,解压后,把lib目录下的jar包引用到java项目中

cxf创建webService与java原生创建类似
首先编写一个ws接口,然后编写接口的实现类,请参考上文。
最后发布webService,代码如下:

public static void main(String[] args) {

	JaxWsServerFactoryBean fac = new JaxWsServerFactoryBean();
	fac.setAddress("http://localhost:8889/ms");
	fac.setServiceBean(new PersonService());
	fac.setServiceClass(IPersonService.class);
	fac.create();
}

在浏览器中访问:http://localhost:8889/ms?wsdl,如图




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值