- 基于Apache CXF構建SOA應用
- 任鋼編著
- 754字
- 2018-12-27 19:52:48
1.3 Apache CXF的功能特性
Apache CXF是一個開放源碼的Web服務框架。該框架提供了一個基于Web Services標準并易于使用的編程模型。Web Services可以使用多種不同的應用協議,諸如針對HTTP的應用協議就包含SOAP、XML和JSON、REST風格等。Apache CXF框架也支持JMS(Java消息服務)的各種傳輸協議。
1.3.1 支持眾多標準
1. 支持JSR的相關規范和標準
JAX-WS——Java API for XML-Based Web Services (JAX-WS) 2.0- JSR-224
Web Services Metadata for the Java Platform——JSR-181
JAX-RS——The Java API for RESTful Web Services - JSR-311
SAAJ——SOAP with Attachments API for Java (SAAJ) - JSR-67
2. 支持WS-*及其相關規范
● 基本規范支持:WS-I Basic Profile 1.1。
● 服務質量規范:Web服務可靠消息傳輸(WS-Reliable Messaging,WS-RM)。
● 元數據規范:WS-Policy、WSDL 1.1。
● 通信安全規范:WS-Security、WS-SecurityPolicy、WS-SecureConversation、WS-Trust(部分支持)。
● 消息支持規范:WS-Addressing、SOAP 1.1、SOAP 1.2、MTOM(Message Transmission Optimization Mechanism)。
1.3.2 支持多種傳輸協議和協議綁定、數據綁定和數據格式
● 協議綁定:SOAP、REST/HTTP、純XML。
● 數據綁定:JAXB 2.x、Aegis、Apache XMLBeans、SDO(Service Data Objects)、JiBX(部分支持)。
● 格式:XML、JSON、FastInfoset。
● 傳輸協議:HTTP、Servlet、JMS和Local(即JVM內部消息通信機制),還有其他通過Apache CXF的Camel傳輸協議,如SMTP/POP3、TCP和Jabber等。
Apache CXF可擴展的API允許開發者方便地對綁定和消息格式進行擴展,如CORBA/IIOP等格式支持。
1.3.3 靈活部署
● 輕量級容器:Jetty、Tomcat或基于Spring的容器。
● JBI集成:發布成為JBI容器中的服務引擎,這些JBI容器有ServiceMix、OpenESB或Petals等。
● Java EE集成:可部署在Java EE應用服務器中,如Tomcat、JBoss、Apache Geronimo、JOnAS、RedHat JBoss、OC4J、Oracle WebLogic和IBM WebSphere。
● 單獨運行的客戶機/服務器。
1.3.4 支持多種語言編程
● 完全支持JAX-WS 2.X客戶機/服務器編程模型。
● JAX-WS 2.X的同步、異步和單程API。
● JAX-WS 2.X動態調用接口(Dll)API。
● JAX-RS的RESTful客戶端。
● 支持包裝(wrapped)和非包裝(non-wrapped)風格。
● XML消息傳遞API。
● 客戶端和服務器編程都支持使用JavaScript和ECMAScript 4 XML(E4X)。
● 通過Yoko提供對CORBA的支持。
● 通過ServiceMix來支持JBI。
1.3.5 支持的工具
● 代碼生成工具:WSDL到Java,WSDL到JavaScript,Java到JavaScript。
● WSDL生成工具:Java到WSDL,XSD到WSDL,IDL到WSDL,WSDL到XML。
● 增加服務端點:WSDL到IDL。
● 驗證文件:WSDL驗證。
- 數據產品經理高效學習手冊:產品設計、技術常識與機器學習
- Mastering Ninject for Dependency Injection
- 數據驅動設計:A/B測試提升用戶體驗
- Microsoft Power BI數據可視化與數據分析
- SQL優化最佳實踐:構建高效率Oracle數據庫的方法與技巧
- “互聯網+”時代立體化計算機組
- 計算機應用基礎教程上機指導與習題集(微課版)
- Oracle數據庫管理、開發與實踐
- 數據修復技術與典型實例實戰詳解(第2版)
- 大數據技術原理與應用:概念、存儲、處理、分析與應用
- SIEMENS數控技術應用工程師:SINUMERIK 840D-810D數控系統功能應用與維修調整教程
- 大數據與機器學習:實踐方法與行業案例
- 云計算
- 數據庫原理與設計實驗教程(MySQL版)
- MySQL技術內幕:InnoDB存儲引擎