擴展開發環境
1.ANT自動部署potlet的前提配置
在MyEclipse中打開Liferay portal 的擴展工程可以看到下面工程目錄:

打開app.server.properies文件,該文件內容為配置發布和部署portlet的參數文件,ANT將會讀取其中參數設置來部署你的portlet.
參數一:app.server.parent.dir
這個參數為Tomcat根目錄,上節我將目錄解壓到了與工程同級的目錄,為 D:\Projects\liferay-portal-tomcat-6.0-5.1.2,所以app.server.parent.dir參數我如下設置:
app.server.type=tomcat
##
## Server Directory
##
app.server.parent.dir=${project.dir}/../
##
## Geronimo+Tomcat
##
即服務器選擇為Tomcat,服務器目錄為工程下build.xml文件的上級目錄
參數二:app.server.tomcat.version app.server.tomcat.dir
在配置文件中找到tomcat的配置段,其余可以不理會,這里我只使用tomcat,并設置了參數如下:
##
## Tomcat
##
app.server.tomcat.version=6.0
app.server.tomcat.dir=${app.server.parent.dir}/liferay-portal-tomcat-6.0-5.1.2
根據上述2個參數的定義,告訴了ANT的部署目標為 D:\Projects\liferay-portal-tomcat-6.0-5.1.2
2.在Eclipse中配置ANT,MyEclipse5.1.1GA中帶的ANT版本較低,需要更換成ANT1.7才能build,為了方便,直接在Eclipse配置好,我們要發布portlet只需ant一下build.xml,portlet就自動發布了

有關Liferay portal的基礎知識
以下綠色字體內容摘自 http://www.tkk7.com/eamoi/archive/2005/10/20/16138.html
什么是Portal
Portal是基于Web的,以“應用整合”和“消除信息孤島”為最終目的,提供單點登錄、內容聚合、個性化門戶定制等功能的綜合信息系統。
完整的Portal通常由Portal服務器、Portlet容器、Portlet構成。
Portal 服務器
Portal服務器是容納Portlet容器,支持Portlet呈現的普通或者特殊Web服務器。Portal服務器通常會提供個性化設置、單點登錄、內容聚合、信息發布、權限管理等功能,支持各種信息數據來源,并將這些數據信息放在網頁中組合而成,提供個性化的內容定制,不同權限的瀏覽者能夠瀏覽不同的信息內容。通常,Portal提供以下功能:
單點登錄:Portal通常采用ACL、SSL、LDAP等業界標準的安全技術,提供對所有現有應用系統的安全集成,只需在Portal的唯一入口上登錄一次,就可以訪問所有應用系統和數據。對于安全性要求較高的應用系統,如電子商務平臺、交易系統等,通過擴展接口傳遞用戶身份信息,如數字證書信息、數字簽名信息等,進行二次身份認證,保證單點登陸的安全性。
權限控制:系統采用LDAP對用戶資源進行統一的管理,同時提供二次開發接口,可以與其他應用系統的用戶管理模塊對接,并能隨相關業務系統實時更新訪問權限。通過完善的授權機制及存取控制,用戶訪問權限控制到字段級別,確保用戶只能訪問具有權限的應用系統及相關信息。
內容管理:實現應用系統之間實時交換信息。采用多種緩存機制,保證內容交換的性能和準確性。采用基于XML的Rich Site Summary (RSS)標準,迅速在各應用系統之間傳播最新變化。
信息發布:實現信息門戶內容的動態維護。動態網站系統可與OA協同辦公系統、知識管理系統等集成,網站信息須經OA系統的審批流程流轉通過后或知識管理平臺設置具有外部共享權限后才可正式發布,真正實現內外信息發布的同步。
文件管理:系統實現無縫集成多種數據源,包括:數據庫、文檔(Office文檔、PDF、AutoCAD、甚至ZIP文檔)、Web網頁、FTP站點等,并對數據按業務要求和職務特點加以分析整理,通過統一Web界面主動推送(Push)至用戶的門戶桌面,幫助用戶做出及時、正確的決策。
Portlet容器
Portlet容器提供Portlet執行的環境,包含很多Portlet并管理它們的生命周期,保存Portlet的定制信息。
一個Portal容器接收到來自Portal的請求后,接著將這個請求傳遞給存在Portal容器的Portlet 執行。Portlet容器沒有義務去組合Portlet 產生的信息內容,這個工作必須由Portal來處理。Portal和 Portal容器可以放在一起視為同一個系統的組件,或者分開成為兩個獨立的組件。
Portlet容器是普通Web Servlet容器的擴展,所以一個Portlet容器可以構建于一個已經存在的Servlet容器或者可能實現全部Web Servlet容器的全部功能。無論Portlet容器怎么實現,它的運行環境總是假定它支持Servlet2.3規范。
通常,Portlet容器擴展自普通的Servlet容器。
Portlet
一個Portlet是以Java技術為技術的Web組件,由Portlet容器所管理,專門處理客戶的信息請求以及產生各種動態的信息內容。Portlet 為可插式的客戶界面組件,提供呈現層成為一個信息系統。
這些由Portlet產生的內容也被稱為片段,而片段是具有一些規則的標記( HTML、XHTML、WML ),而且可以和其他的片段組合而成一個復雜的文件。一個或多個 Portlet 的內容聚合而成為一個 Portal 網頁。而 Portlet 的生命周期是被 Portlet 容器所管理控制的。
客戶端和Portlet的互動是由Portal通過典型的請求/響應方式實現,正常來說,客戶會和Portlet所產生的內容互動,舉例來說,根據下一步的連接或者是確認送出的表單,結果 Portal將會接收到Portlet的動作,將這個處理狀況轉向到目標Portlet。這些Portlet 內容的產生可能會因為不同的使用者而有不同的變化,完全是根據客戶對于這個Portlet的設置。
3.觀察一下擴展工程中實現的一個portlet,看看工程中對Liferay portal 的二次開發文件結構以及各種文件的分布.

posted on 2009-02-27 09:38
弦驚塞外 閱讀(967)
評論(2) 編輯 收藏