apache CXF是由IONA技術(shù)公司(現(xiàn)在是Progress的一部分)開發(fā)的Celtix和由Codehaus主持的團(tuán)隊(duì)開發(fā)的XFire,合并是由人們?cè)贏pache軟件基金會(huì)共同完成的。CXF的名字來源于"Celtix"和"XFire"的首字母。
設(shè)計(jì)考慮因素
CXF的關(guān)鍵的設(shè)計(jì)考慮因素包括
1. 前端,如JAX-WS,與核心代碼的徹底分離。
2. 簡(jiǎn)單易用,例如,創(chuàng)建客戶端和端點(diǎn)不需標(biāo)注。
3. 高性能,最少的計(jì)算開銷。
4. 可嵌入的Web服務(wù)組件:例如可以嵌入到Spring Framework和Geronimo中。
在面向服務(wù)的架構(gòu)(SOA)基礎(chǔ)設(shè)施項(xiàng)目中,CXF通常和apache ServiceMix,Apache Camel以及Apache ActiveMQ一起使用。
特性
CXF支持的特性非常廣泛,但特性主要在以下一些方面:
支持的Web服務(wù)標(biāo)準(zhǔn)包括:
SOAP
WS-Addressing
WS-Policy
WS-ReliableMessaging
WS-Security
WS-SecurityPolicy
WS-SecureConversation
JAX-WS API,用于Web服務(wù)開發(fā)
WSDL優(yōu)先工具
Java優(yōu)先支持
JAX-RS (JSR 311 1.0) API,用于RESTfulWeb服務(wù)開發(fā)
ECMAScript編程模型,用于客戶端和服務(wù)端開發(fā)
Maven工具
支持CORBA
HTTP和JMS傳輸層
可嵌入的開發(fā):
ServiceMix或其他JBI容器
Geronimo或其他Java EE容器
tomcat或其他Servlet容器
引用OSGi遠(yuǎn)程服務(wù)實(shí)現(xiàn)
商業(yè)支持
包括FuseSource在內(nèi)的軟件廠商提供CXF的企業(yè)支持。FuseSource提供一個(gè)CXF的企業(yè)版本,稱作FUSE Services Framework,該版本是經(jīng)過測(cè)試,認(rèn)證并提供支持的。
更新與補(bǔ)充
Apache CXF不僅支持JAX-RS (JSR 311 1.0) API,還支持JAX-RS (JSR 339 2.0) API,這是用于開發(fā)RESTful Web服務(wù)的Java編程接口的更新版本。此外,CXF還支持多種XML數(shù)據(jù)綁定框架,包括JAXB、Aegis、apache XMLBeans和SDO。CXF的傳輸層不僅包括HTTP和JMS,還支持WebSocket,這為開發(fā)者提供了更多的通信選項(xiàng)。
CXF的可嵌入性不限于ServiceMix、Geronimo和tomcat,它還可以嵌入到其他Servlet容器中,提供了更廣泛的部署選項(xiàng)。此外,CXF還支持引用OSGi遠(yuǎn)程服務(wù)實(shí)現(xiàn),這增強(qiáng)了其在OSGi環(huán)境中的集成能力。
IONA Technologies不僅以FUSE Services Framework的名義分發(fā)Apache CXF的商業(yè)企業(yè)版本,而且這個(gè)版本提供了額外的測(cè)試、認(rèn)證和支持,以滿足企業(yè)級(jí)應(yīng)用的需求。
參考資料 >