開源Portal的簡單介紹分析

主要包括:Pluto,Liferay,eXo,Jetspeed四種開源Portal的介紹和分析,有助於對具體項目選擇合適的開發平臺。

(1)Pluto

2003年10月JSR168規範1.0正式公佈後,Jakarta Apache就開始實施Pluto計劃(冥王星計劃),最終開發出該規範的一個參考實現(Reference Implementation),即Pluto。Pluto的1.0.1-rc2版與2004年12月發佈。
Pluto實現基於 JSR168的一個 Portlet Container,相當於爲開發者提供了一個運行portlets的工作平臺。Pluto本身也提供了一個簡單的Portal模塊,該模塊僅僅是爲了滿足Portlet容器和JSR 168的需要而寫的,因而顯得非常簡單,提供的實用的Portlet也非常少。從某種意義上說Pluto更像是一個Portlet Container,作爲一個實用的Portal開發框架尚需要更強大的支持。但新版本的Pluto仍沒有推出。對於Pluto的應用開發,Apache更推薦使用Jetspeed項目框架。
儘管Pluto作爲一個完整的Portal應用還非常欠缺。但不少有影響力的Portal項目使用Pluto作爲Portlet Container。這些項目包括:Jetspeed 、Cocoon uPortal 、Jahia等。由此可見Pluto的重要性。從開發者和學習者的角度看,Pluto的意義還在於爲開發者和學習者提供了一個深入瞭解Portlet Container的簡潔的參考實例。

(2)Liferay

Liferay(支持JSR168)代表了完整的J2EE應用 ,最高版本是2005年1月推出的Professional 3.2.0。它的主要優點有:
      (1)使用第三放的開源項目,如Hibernate等。特別是前臺界面部分使用了Struts技術;
      (2)支持包括中文在內的多種語言;
      (3)支持較多的先進技術,如Web Services、EJB, JMS, SOAP, XML等;
Liferay的缺點是它缺乏一個簡單清晰可拓展的架構設計,整個架構比較複雜且龐大;Struts1.1本身並不支持JSR168,所以Liferay在實現諸如上下文共享等問題上顯得十分笨重且沒有從根本上解決這些問題;portlet設計也顯得比較凌亂。此外,如果你的門戶系統準備應用於商業用途,你需要購買License。基於它進行二次開發比較困難。

(3)eXo

eXo(支持JSR168)基於JSF的Portal實現。最新版本是2004年10月發佈的1.0RC1版。
主要優點包括:
(1) 由AOP(AspectJ)實現的內容管理系統,極大提高了內容管理性能;
(2) 基於Pico Container的Portlet Container,Pico是一個著名的IoC3輕量級容器。同時也實現了上下文共享,二次開發的流程比較清晰;
(3) 使用Struts框架技術;
(4) 提供工作流技術服務(Workflow service)。
(5) 提供了很多交流工具,通過XML可以爲結構化的信息輕易地創建視圖;
     由上可見eXo採用了諸多先進技術,但存在不少缺點。主要缺點:由於Portal Server本身的數據是使用xmldb來進行處理,保存到數據庫的數據都是亂碼而且它所有默認的平臺字符集都是ISO-8859_1。缺乏中文的充分支持,對於中文門戶的開發並沒有優勢;由於JSF是重量級的表現層框架,使得exo的二次開發工作量比較大;對於商業Portal應用開發需要購買License。總體開發難度較大。

(4) JetSpeed


JetSpeed是Apache組織的開源Portal項目。Jetspeed 目前有兩個版本可供選擇1.X和2.0版本。Jetspeed1.X出現得比較早,但第一個較爲成熟的版本發佈是1.4。此後1.X不斷推出新版本。但Jetspeed1.X都不支持JSR168。當JSR168在2003年發佈後,Apche開始開發Jetspeed2,提供對JSR168 的全面支持。
下表是Jetspeed重要版本的發佈日期:
Jetspeed的重要版本                                         發佈日期
Jetspeed-1.4b2                                              2002年12月
Jetspeed-1.5                                                2004年4月
Jetspeed-2.0-M1                                             2004年12月
Jetspeed-2.0-M2                                             2005年4月
Jetspeed1.X基於Turbine框架開發,它提供了豐富的Portal技術功能。主要優點有:XML文件註冊Portlet,便於管理;圖形化的部署和卸載;對中文的良好支持等。值得注意的是IBM早期的WebSphere Portal Server就是在JetSpeed1.X上進行二次開發的。Jetspeed2.0在1.X基礎上進行了較大的改動,功能更加豐富,完全遵循JSR標準。

配置方法,不同的版本的配置可能有變化,如不成功,可以自行察看文檔。


Pulto在Tomcat下的安裝配置方法:
(1) 從
http://portals.apache.org/pluto/mirrors.cgi下載最新的二進制版本安裝文件
(2) 執行%pluto%/bin/install,將它安裝到Tomcat目錄下即可
(3) 在瀏覽器中輸入:
http://localhost:8080/pluto/portal,運行Pluto

Liferay Professional在Tomcat下的安裝配置方法:
(1) 從
http://www.liferay.com/downloads/index.jsp下載Liferay Professional安裝文件;
(2) 解壓ZIP包到某個目錄下
(3) 若下載Tomcat版本的Liferay安裝文件,則不需再裝Tomcat,直接啓動bin目錄下的startup.bat文件。
(4) 在瀏覽器中輸入
http://localhost/運行Liferay Professional。

eXo Platform在Tomcat下的安裝配置方法:
(1) 從
http://www.exoplatform.com/portal/faces/public/exo 下載eXo Platform的安裝包。
(2) 解壓ZIP包到某個目錄下
(3) 若下載Tomcat版本的eXo安裝文件,則不需再裝Tomcat,直接啓動bin目錄下的startup.bat文件。
(4)  在瀏覽器中輸入
http://localhost/ 運行eXo Platform.

Jetspeed2在Tomcat下的安裝配置方法:
(1) 從
http://www.apache.org/dist/portals/jetspeed-2/ 下載Jetspeed2 M1或M2版本安裝包。
(2) 若是安裝包中已經捆綁Tomcat,解壓即可。若安裝包不含Tomcat,先安裝Tomcat,然後將安裝包解壓到Tomcat目錄,並覆蓋相關文件即可。
(3) 安裝要注意的問題有:Jetspeed2M1版本由於Bug無法安裝Tomcat5.5上(此BUG見
http://issues.apache.org/jira/browse/JS2-187);Jetspeed2必須安裝在Tomcat5.0.28以上版本上,否則低版本由於JAAS問題無法登陸;
(4) 啓動jetspeed-database目錄下的start-database.bat,啓動數據庫;
(5) 啓動Tomcat;
(6) 在瀏覽器中輸入
http://localhost:8080/jetspeed/portal 運行Jetspeed;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章