1. 程式人生 > >axis2與cxf區別

axis2與cxf區別

開源社區 -s 實現 部署 廣泛 asi -a ice 喜歡

1.CXF支持 WS-Addressing,WS-Policy, WS-RM, WS-Security和WS-I Basic Profile。Axis2不支持WS-Policy,但是承諾在下面的版本支持。

2. CXF可以很好支持Spring。Axis2不能

3. AXIS2支持更廣泛的數據並對,如XMLBeans,JiBX,JaxMe和JaxBRI和它自定義的數據綁定ADB。註意JaxME和JaxBRI都還是試驗性的。CXF只支持JAXB和Aegis。在CXF2.1

4. Axis2支持多語言-除了Java,他還支持C/C++版本。

比較這兩個框架的Web Service開發方法與比較它們的特性同樣重要。 從開發者的角度,兩個框架的特性相當的不同。 Axis2的開發方式類似一個小型的應用服務器,Axis2的開發包要以WAR的形式部署到Servlet容器中,比如Tomcat,通過這些容器可以對工作中的Web Service進行很好的監控和管理。Axis2 的Web administrion模塊可以讓我們動態的配置Axis2.一個新的服務可以上載,激活,使之失效,修改web服務的參數。管理UI也可以管理一個或者多個處於運行狀態的服務。這種界面化管理方式的一個弊端是所有在運行時修改的參數沒有辦法保存,因為在重啟動之後,你所做的修改就會全部失效。

Axis2允許自己作為獨立的應用來發布Web Service,並提供了大量的功能和一個很好的模型,這個模型可以通過它本身的架構(modular architecture)不斷添加新的功能。有些開發人員認為這種方式對於他們的需求太過於繁瑣。這些開發人員會更喜歡CXF。

CXF更註重開發人員的工效(ergonomics)和嵌入能力(embeddability)。大多數配置都可以API來完成,替代了比較繁瑣的XML配置文件, Spring的集成性經常的被提及,CXF支持Spring2.0和CXF‘s API和Spring的配置文件可以非常好的對應。CXF強調代碼優先的設計方式(code-first design),使用了簡單的API使得從現有的應用開發服務變得方便。

不過你選擇Axis2還是CXF,你都可以從開源社區得到大量的幫助。這兩個框架都有商業公司提供服務,WSO2提供AXIS2的支持,Iona提供CXF的支持。這兩公司都有很活躍的開發者社區。 Axis2出現的時間較早,CXF的追趕速度快。我的建議是:如果你需要多語言的支持,你應該選擇AXIS2。如果你需要把你的實現側重JAVA並希望和Spring集成,CXF就是更好的選擇,特別是把你的Web Service嵌入其他的程序中。如果你覺得這兩個框架的新特性對於你並沒有太大的用處,你會覺得Axis1也是不錯的選擇,你應該繼續使用它知道你有充分的理由去更換它。

axis2與cxf區別