第一部分 Liferay Portal 架構(gòu)解析
本部分主要內(nèi)容
Portal 服務(wù)器? Portal 容器? Portlet
作為一個(gè)開源Portal產(chǎn)品,Liferay Portal提供對(duì)多個(gè)獨(dú)立系統(tǒng)的內(nèi)容集成,幫助多個(gè)組織實(shí)現(xiàn)更有效的合作。與其他商業(yè)的Portal產(chǎn)品相比,Liferay Portal有著一系列的優(yōu)良特性,而且不需要付費(fèi)。
隨著Portal的興起,越來越多的公司開始涉足Portal產(chǎn)品開發(fā),并組建各自的Portal組件和基于其的產(chǎn)品,比如IBM、BEA、MicroSoft、SAP、Apache等。各個(gè)廠商的接口互不兼容,給軟件開發(fā)商以及開發(fā)人員帶來諸多不便。
1.1.1? JSR168
為此,JCP組織發(fā)布了JSR168(Java Specification Request),Portlet Specification V1.0,用來提供不同的Portal和Portlet之間的互通性。只要開發(fā)的Portlet遵循JSR168,則就可以在所有遵循JSR168的Portal上部署運(yùn)行。
JSR168中定義了Portal的實(shí)現(xiàn)規(guī)范和接口,并對(duì)理想的Portlet進(jìn)行了詳細(xì)的規(guī)劃和描述。
1.1.2? WSRP
WSRP是OASIS Web Service for Remote Portlet的縮寫。WSRP是Web Service的一種新的商業(yè)應(yīng)用,一種新的標(biāo)準(zhǔn),主要用來簡(jiǎn)化Portal對(duì)于各種資源或者程序整合的復(fù)雜度,可以避免編程帶來的整合麻煩和問題。而且Portal管理員可以從海量的WSRP服務(wù)中選擇需要的功能用以整合到目前所用的Portal中。它有三種角色:
①、生產(chǎn)者 à 提供Portlet
②、消費(fèi)者 à 使用Portlet
③、終端用戶 à 最終用戶
它的特點(diǎn)在于生產(chǎn)者將消費(fèi)者所需要的信息通過WSRP返回給消費(fèi)者,這些信息是相對(duì)標(biāo)記片斷,例如HTML、XHTML等,可以直接嵌入用戶的頁面中,而不用像Web Service一樣開發(fā)用戶端接口。
實(shí)現(xiàn)這個(gè)規(guī)范,Portal可以跟各式各樣的數(shù)據(jù)源打交道,徹底終結(jié)信息孤島的窘境。
Portal是基于Web的,以“應(yīng)用整合”和“消除信息孤島”為最終目的,提供單點(diǎn)登錄、內(nèi)容聚合、個(gè)性化門戶定制等功能的綜合信息系統(tǒng)。
完整的Portal通常由Portal服務(wù)器、Portlet容器、Portlet構(gòu)成。
1.2.1? Portal 服務(wù)器
Portal服務(wù)器是容納Portlet容器,支持Portlet呈現(xiàn)的普通或者特殊Web服務(wù)器。Portal服務(wù)器通常會(huì)提供個(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ù),提供對(duì)所有現(xiàn)有應(yīng)用系統(tǒng)的安全集成,只需在Portal的唯一入口上登錄一次,就可以訪問所有應(yīng)用系統(tǒng)和數(shù)據(jù)。對(duì)于安全性要求較高的應(yīng)用系統(tǒng),如電子商務(wù)平臺(tái)、交易系統(tǒng)等,通過擴(kuò)展接口傳遞用戶身份信息,如數(shù)字證書信息、數(shù)字簽名信息等,進(jìn)行二次身份認(rèn)證,保證單點(diǎn)登陸的安全性。
權(quán)限控制:系統(tǒng)采用LDAP對(duì)用戶資源進(jìn)行統(tǒng)一的管理,同時(shí)提供二次開發(fā)接口,可以與其他應(yīng)用系統(tǒng)的用戶管理模塊對(duì)接,并能隨相關(guān)業(yè)務(wù)系統(tǒng)實(shí)時(shí)更新訪問權(quán)限。通過完善的授權(quán)機(jī)制及存取控制,用戶訪問權(quán)限控制到字段級(jí)別,確保用戶只能訪問具有權(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)、知識(shí)管理系統(tǒng)等集成,網(wǎng)站信息須經(jīng)OA系統(tǒng)的審批流程流轉(zhuǎn)通過后或知識(shí)管理平臺(tái)設(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)等,并對(duì)數(shù)據(jù)按業(yè)務(wù)要求和職務(wù)特點(diǎn)加以分析整理,通過統(tǒng)一Web界面主動(dòng)推送(Push)至用戶的門戶桌面,幫助用戶做出及時(shí)、正確的決策。
1.2.2 ?Portlet容器
Portlet容器提供Portlet執(zhí)行的環(huán)境,包含很多Portlet并管理它們的生命周期,保存Portlet的定制信息。
一個(gè)Portal容器接收到來自Portal的請(qǐng)求后,接著將這個(gè)請(qǐng)求傳遞給存在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容器的全部功能。無論Portlet容器怎么實(shí)現(xiàn),它的運(yùn)行環(huán)境總是假定它支持Servlet2.3規(guī)范。
通常,Portlet容器擴(kuò)展自普通的Servlet容器。
posted on 2005-10-20 14:42
eamoi 閱讀(9016)
評(píng)論(5) 編輯 收藏 所屬分類:
Java