擴(kuò)展開發(fā)環(huán)境
1.ANT自動(dòng)部署potlet的前提配置
在MyEclipse中打開Liferay portal 的擴(kuò)展工程可以看到下面工程目錄:

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

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

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