您的位置:首页 > 运维架构 > Apache

第5章 Apache CXF的架构体系和基础

2015-11-23 16:34 841 查看
第5章 Apache CXF的架构体系和基础

5.1 Apache CXF的核心架构

Apache CXF主要是由下列组件构成:

*总线(Bus)组件

*前端编程模型(Frontend)组件

*消息(Messaging)和拦截器(Interceptors)组件

*服务模型(Service Model)组件

*数据绑定(DataBindings)组件

*WSDL绑定(WSDL Bindings)组件

*传输协议(Transport)组件

*Apache CXF注释组件

5.2 Bus介绍

Apache CXF对外提供的功能和资源都是直接或间接通过调用Bus(总线)来实现。Bus是Apache CXF资源的管理者,也是调度者。通过Bus的调度和关联,开发人员可以在Apache CXF运行环境中共享资源。

Apache CXF使用Spring的依赖注入来实现配置,在运行时装载Spring的配置文件并把各个组件关联组合到一起。

应用程序的类路径:META-INF/cxf目录下有bean配置文件,在应用程序中bean的配置文件内容包括:

*cxf.xml(仅仅配置CXF的核心内容)

*cxf-extension.xml(配置CXF的扩展内容,如cxf-extension-corba、cxf-extension-jaxws、cxf-extension-jms等)

*cxf-property-editors.xml(如cxf-rt-transports-http)

5.3 消息(Messaging)和拦截器(Interceptors)组件介绍

Apache CXF框架是建立在通用消息层上的应用框架,其构成包括消息(Messaging)组件,拦截器(Interceptors)组件和相位(phase)组件。

5.4 前段编程模型(Frontend)组件介绍

前端编程模型提供一种用于Apache CXF的服务器端和客户端进行交互的模型。前端编程模型的设计规范主要遵循JAX-WS规范和JAX-RS规范。

Apache CXF支持四种前段应用模式,一种是JAX-WS前段模式,一种是JAX-RS前段模式,一种是JavaScript语言,还有一种是简化前段模式(simple frontend)。

5.5服务模型(Service Model)组件说明

服务模型是Apache CXF中Service的代表。由两部分组成:第一部分是ServiceInfo,其中包含该服务的WSDL模型以及操作、绑定和端点;第二部分就是service本身,它包含了ServiceInfo、数据绑定、服务拦截器、服务属性、等等。

5.6 数据绑定(Data Bindings)组件

数据绑定(Data Binding)实现XML和Java之间的映射。数据绑定(Data Bindings)通过生成XML schema的方式把XML转化成数据或者数据转化为XML,并支持wsdl2java代码生成器。

5.7 绑定(Bindings)组件

绑定(Bindings)在顶层传输协议上提供了具体格式和协议的映射。

5.8 传输协议(Transport)组件

为了在开发过程中对绑定和前端屏蔽内部的传输细节,Apache CXF提供了自己的传输协议抽象。

5.9 CXF的注释

Apache CXF提供了几种自定义的注释,这样的注释可以使用ApacheCXF在运行时进行灵活的配置和定制化。

1)@Features注解

用于添加Features功能

2)Interceptor注解

在不同的拦截器链条中添加拦截器以便用于处理消息

3)@WSDLDocumentation注解和@WSDLDocumentationCollection注解的使用

4)@SchemaValidation注解

5)@DataBinding注解

6)@Logging注解的使用

7)@GZIP注解的使用

8)@FastInfoset注解的使用

9)@EndpointProperty注解和@EndpointProperties注解的使用

10)@Policy注解和@Policies注解的使用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: