Apache-CXF学习整理

1   CXF简介

本章主要简介CXF的理论知识。

 

1.1         CXF概述

CXF 是Celtix + Xfire的结合体,Apache CXF 的前身叫 Apache CeltiXfire,现在已经正式更名为 Apache CXF 了。CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用。Apache CXF已经是一个正式的Apache顶级项目。

 

1.2         CXF支持

1.2.1        协议标准

CXF支持多种协议标准:JAX-WS、 JAX-WSA、JSR-181 和 SAAJ;支持 SOAP 1.1、1.2、WS-I BasicProfile、WS-Security、WS-Addressing、WS-RM 和 WS-Policy;支持 WSDL 1.1 、2.0;支持 MTOM;

 

1.2.2        传输方式

CXF支持多种协议传输方式:

Bindings:SOAP、REST/HTTP;

Data Bndings:目前支持 JAXB 2.0、Aegis 两种,默认是 JAXB 2.0。XMLBeans、Castor 和 JiBX 数据绑定方式将在 CXF 2.1 版本中得到支持;

格式(Format:XML、JSON;

传输方式:HTTP、Servlet、JMS 和 Jabber;

可扩展 API 允许为 CXF 增加其它的 Bindings,以能够支持其它的消息格式,比如:CSV 和固定记录长度。

 

1.3         CXF特点

1.3.1        灵活部署

轻量级容器:可在 Tomcat 或基于 Spring 的容器中部署 Services;集成 JBI:可以在如 ServiceMix, OpenESB or Petals 等等的 JBI 容器中将它部署为一个服务引擎;集成 SCA:可以部署在如 Tuscany 之类的 SCA 容器中;集成 J2EE:可以在 J2EE 应用服务器中部署 Services,比如:Geronimo、JOnAS、JBoss、WebSphere Application Server 和 WebLogic Application Server,以及 Jetty 和 Tomcat;独立的 Java 客户端/服务器。

 

1.3.2        支持多种编程语言

全面支持 JAX-WS 2.0 客户端/服务器编程模型;支持 JAX-WS 2.0 synchronous、asynchronous 和 one-way API's;支持 JAX-WS 2.0 Dynamic Invocation Interface (DII) API;支持 wrapped and non-wrapped 风格;支持 XML messaging API;支持 JavaScript 和 ECMAScript 4 XML (E4X) ,客户端与服务端均支持;通过 Yoko 支持 CORBA;通过 Tuscany 支持 SCA;通过 ServiceMix 支持 JBI ;

 

1.3.3        代码生成

Java to WSDL;WSDL to Java;XSD to WSDL;WSDL to XML;WSDL to SOAP;WSDL to Service;

 

1.4         CXF环境要求

CXF 框架是一种基于 Servlet 技术的 SOA 应用开发框架,要正常运行CXF,除了 CXF 框架本身之外,还需要 JDK 和 Servlet 容器的支持。

posted @ 2013-09-12 11:36  IT一族  阅读(233)  评论(0编辑  收藏  举报