CXF Architecture 建立在下面的组建之上:
- Bus
- Fronted
- Message and Inteceptor
- Service Model
- Data Bindings
- Protocol Bindings
- Transport
建构图参考:CXF Architecture.png
1. Bus
Bus是CXF架构的骨干。CXF Bus由一个Spring配置文件cxf.xml组成,在Servelet初始化期间由SpringBusFactory
进行加载。cxf.xml定义了一个所有Endpoint的共用上下文环境,将所有的基层运行组建联合起来。SpringBusFactory
扫描并且加载ClassPath下META-INF/cxf目录下面的配置文件,进行创建Application Context;构建上下文时从下面
文件进行构建:
META-INF/cxf/cxf.xml
META-INF/cxf/cxf-extension.xml
META-INF/cxf/cxf-property-editors.xml
2. Frontend
CXF 提供的Fronted Mode,可以使用不同的Fronted API去创建WebService.例如使用:Factory Bean或JAX-WS
实现。
3. JAX-WS
是一个用于开发,发布,消费WebService的 规范。
4. Simple frontend
Simple frontend提供了简单的组件或Java 类使用Reflection来进行构建和发布WebService.例如:
// Build and publish the service
OrderProcessImpl orderProcessImpl = new OrderProcessImpl();
ServerFactoryBean svrFactory = new ServerFactoryBean();
svrFactory.setServiceClass(OrderProcess.class);
svrFactory.setAddress("http://localhost:8080/OrderProcess");
svrFactory.setServiceBean(orderProcessImpl);
svrFactory.create();
5. Messaging and Interceptors
Interceptors是一种组件,用于拦截WebService Client与Server端之间的消息交互和传输,通过拦截器链的方式
实现。
6. Service model
Service model用于在WSDL文档中描述一个service, 它提供了用于创建各种WSDL元素的功能,如创建:operations,
bindings,endpoints,schema等。
7. Data binding
Data binding用于处理Java对象和XML元素之间的映射。CXF支持两种类型的数据绑定:JAXB和Aegis, CXF默
认使用JAXB.
8. Protocol binding
即指定Service's Message使用那种协议进行Bind.例如:
<wsdl:binding name="OrderProcessImplServiceSoapBinding"
type="tns:OrderProcess">
<soap:binding style="document" transport=
"http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="processOrder">
<soap:operation soapAction="" style="document" />
<wsdl:input name="processOrder">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="processOrderResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
CXF支持的Binding Protocal:
- SOAP 1.1
- SOAP 1.2
- CORBA
- Pure XML
9. Transports
WSDL文档中Transports作为<port>元素体现的,例如:
<wsdl:service name="OrderProcessImplService">
<wsdl:port binding="tns:OrderProcessImplServiceSoapBinding"
name="OrderProcessImplPort">
<soap:address location="http://localhost:8080/orderapp/
OrderProcess" />
</wsdl:port>
</wsdl:service>
CXF支持的Transport:
- 大小: 10.8 KB
分享到:
相关推荐
本文旨在介绍CXF架构,以便对CXF有一个快速的理解。 一、架构目标和约束 Apache CXF 服务框架旨在构建服务所必须的基础组件。目标有许多,其中包括 下几方面: 1. 可嵌入式 2. 高性能 3. 易配置 4. 直观易用 5. 前后...
2. **CXF架构**:了解CXF是如何处理Web Service请求和响应的,包括其基于StAX(Streaming API for XML)的解析机制和WSDL(Web Services Description Language)的处理方式。 3. **CXF配置**:学习如何在Spring框架...
2. **CXF架构**:CXF包含多个组件,如Frontend Client API、JAX-WS、JAX-RS、Data Binding、Transport和Protocol处理等。这些组件协同工作,处理Web服务的请求、响应,以及数据的序列化和反序列化。 3. **JAX-WS...
- CXF架构的设计原理和组件交互方式。 - 如何自定义CXF的行为,例如通过扩展点进行功能增强。 - 如何调试和监控CXF服务,以优化性能和解决问题。 - 如何利用CXF实现复杂的安全策略和消息传递模式。 - 如何将CXF集成...
2. **CXF架构**:熟悉CXF的组件,如Bus、Endpoint、Service和DataBinding,以及它们如何协同工作以提供Web服务。 3. **Spring集成**:学习如何在Spring配置文件中声明CXF Bean,以及如何使用Spring的注解来创建和...
2. **CXF架构**:了解CXF框架的核心组件,如Bus、Endpoint、Service和DataBinding。 3. **JAX-WS规范**:学习如何使用Java注解来定义服务接口和实现。 4. **WSDL和XSD**:掌握如何编写WSDL文件来描述服务接口,以及...
Bus 是整个 CXF 架构的核心,类似于 Spring 中的 ApplicationContext,用于管理和配置 CXF 的各种资源,例如 WSDL 管理器、绑定工厂等。Bus 提供了一个可扩展的环境,允许开发者自定义资源或替换默认资源。默认情况...
2. **CXF架构**:CXF的架构由几个关键组件构成,包括Bus(消息总线)、Endpoint(服务端点)、Service(服务)、DataBinding(数据绑定)和Transport(传输)。这些组件协同工作,处理服务的生命周期、消息传递和...
CXF 体系架构 CXF 体系架构是基于服务orientated架构(SOA)的轻量级开源框架,提供了一个灵活、可扩展、可靠的服务开发与集成平台。该架构主要组件包括Bus、Front-end、Messaging & Interceptors、Service Model、...
3. **CXF架构**:CXF的核心组件包括Bus、Endpoint、Service和DataBinding等。Bus是整个框架的中枢,负责配置、管理和协调其他组件;Endpoint代表了服务的网络地址;Service定义了服务的业务逻辑;DataBinding则处理...
1. **CXF架构**:CXF由多个模块组成,包括服务模型、数据绑定、协议绑定、传输层等,这些模块协同工作,实现了Web服务的完整生命周期。 2. **JAX-WS和JAX-RS**:CXF支持这两种Java API,分别用于构建SOAP和RESTful ...
涵盖的知识点包括但不限于:Web服务的介绍、SOAP和RESTful服务的基本概念、CXF架构和组件、如何使用CXF开发和部署Web服务、如何集成服务到企业应用中、安全性考虑、以及性能优化等。 在Web服务开发方面,本书详细...
1. **Bus**:CXF架构的核心,可以看作是一个可配置的资源中心,类似于Spring的ApplicationContext。Bus管理各种共享资源,如WSDL管理者和绑定工厂。Bus的创建由BusFactory负责,默认使用SpringBusFactory,它会读取...
3. **CXF架构**:深入理解CXF的组件结构,如Frontend(客户端)、Backend(服务端)和服务模型,以及它们如何协同工作。 4. **CXF配置与部署**:学习如何使用CXF提供的XML配置文件(如cxf.xml和web.xml)来配置服务...
2. **CXF架构**: - **服务模型**:CXF使用服务模型来表示服务及其操作,这包括服务接口、服务实现、数据绑定等。 - **前端处理器**:处理来自客户端的请求,如SOAP消息解析,转换为内部处理格式。 - **后端...
CXF架构概述** CXF的架构基于模块化设计,主要分为以下几个部分: - 客户端(Client):负责生成和调用Web服务,通常通过JAX-WS或JAX-RS实现。 - 服务器端(Server):处理来自客户端的请求,提供服务实现。 - 数据...
1. **CXF架构**:理解CXF的工作原理,包括服务端和客户端的生命周期,以及请求处理流程,如消息的接收、解析、路由和服务调用等。 2. **拦截器**:CXF使用拦截器模型处理消息,这些拦截器可以在消息发送前、发送后...
**CXF架构组件** 1. **Bus**:CXF的核心组件,类似于Spring的ApplicationContext,管理共享资源,如WSDL管理者和绑定工厂。默认的Bus实现基于Spring,通过依赖注入连接各个运行时组件。BusFactory负责创建Bus,...