Apache Axis2

Apache Axis2是一個Web服務的核心支援引擎。AXIS2對舊有的AXIS重新設計及重寫,並提供兩種語言JavaC的開發版本。

Apache Axis2
開發者Apache軟件基金會
目前版本1.6.2(2012年4月17日 (2012-04-17)
原始碼庫 編輯維基數據連結
程式語言JavaC語言
作業系統跨平台
類型Web服務
特許條款Apache特許條款2.0
網站https://axis.apache.org/axis2/java/core/

事實上AXIS2 不只為WEB應用程式提供Web服務的介面,而且它也可以作為一個單獨的伺服器看待,而且很簡單就能跟Apache Tomcat整合,目前AXIS2的最新版本是1.6.2。

AXIS2項目

Apache AXIS2是一個 SOAP("Simple Object Access Protocol 簡單物件存取恊定")的實作並已經提交 W3C

來自 W3C 的規格:

"SOAP是一個輕量級協定使一個有結構好的訊息(well-formated)在分佈式環境裏裏互相交換,它是基於XML協定 包括三部份的: 1 定義一個信封框架描述信封內的是什麼訊息和怎麼處理它。 2 一套編碼規則使應用程式能夠定義datatypes以表達訊息。 3 以及如何恊調及說明遠端程式調用和作出回應。"

這個AXIS2項目是基於Apache SOAP計劃。

為什麼要AXIS2

新的架構是在2004年8月的首腦會議在斯里蘭卡首都科倫坡提出的。新結構的 axis2 是建築在axis1.x 比較axis1, Axis2以更加靈活,高效和更好的組態。一些好的觀念亦從axis 1.X 被儲存在新的結構中。阿帕奇 axis2 不僅支援 SOAP1.1和 SOAP1.2,而且它也對於REST風格的Web服務也有綜合性的支援,相同的業務邏輯實作可以同步利用WS*式的介面以及REST介面。

阿帕奇axis2較舊的版本是更有效率,更加模組化和更多的XML類型。它是經過精心設計,支援輕鬆添加外掛程式"模組module",以提升現有的功能特徵,例如安全性和可靠性,模組現有或正在發展的包括:

- WS 可靠訊息服務由 Apache sandesha2 支援 - WS-Coordination and WS-AtomicTransaction由 Apache Kandula2 支援 - WS-Security 由 Apache Rampart 支援 - WS-Addressing 已包括作axis2 在為核心模組

Axis2有許多新的特點,以加強對行業規範的實施,主要點如下:

  • 速度:Axis2使用自己的對象模型和stax(串流API的XML)的來解析,比較早版本的Apache AXIS2以達到更明顯的速度。
  • 低記憶體:Axis2設計保持了低記憶體。
  • AXIOM: Axis2 訊息處理有自己的輕量對象模型AXIOM,,具有可延伸性,高效能及開發方便的優點。
  • 熱部署:Axis2能夠在已建立和運轉時有能力部署Web服務。 換言之,新的服務可以添加到系統無需關閉伺服器,乾脆把所需的 WebService的檔案放入服務目錄,版本和部署模型將自動部署服務以供使用。
  • 非同步Web服務:Axis2現在支援非同步Web服務和非同步Web服務調用並使用非阻塞的客戶端。
  • MEP支援:Axis2 現在是簡便與靈活的支援訊息交換模式(MEP),內建支援WSDL的2.0定義的基本MEP。
  • 靈活性-Axis2構築給開發人的發展完全自由地插入延伸到引擎定製頭處理,系統管理,以及任何你可以想像的東西。
  • 穩定:Axis2界定一套出版介面其變化對比AXIS可說改變相對比較慢。
  • 面向組件的部署-你可以很容易界定重用網絡處理器,實施的共同模式處理您的請求,或發給你的夥伴。
  • WSDL的支援:axis2支援WebService描述語言(版本1.1和2.0),讓您輕鬆地建立STUB來連結遠端服務,並自動向其他機器說明你的服務部署。
  • 新增:Web Services 的多個技術已被納入, 包括 WSS4J 的保安技術(Apache Rampart),Sandesha 的可靠訊息服務,Kandula一個WEB服務的協調整合,WEB服務自動傳送。
  • 組合和擴展:模組用來加強AXIS2延展性,但模組不可以熱部署,因為模組改變AXIS2整體行為及制度。

相關技術

外部連結