<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Junky's IT Notebook

    統(tǒng)計(jì)

    留言簿(8)

    積分與排名

    WebSphere Studio

    閱讀排行榜

    評(píng)論排行榜

    Portal Framework介紹(第一部分)

     

     

    1 概述... 3

    2 基本概念... 3

    2.1 Portal定義... 3

    2.2 Portlet定義... 4

    2.3 Portal頁(yè)面的元素... 5

    2.4 Portlet生命周期... 6

    2.5 Portlet標(biāo)簽庫(kù)... 7

    2.6 JSR168WSRP. 7

    3 Portal的功能... 8

    4 部分開源Portal框架的分析和比較... 9

    4.1 評(píng)價(jià)標(biāo)準(zhǔn)... 9

    4.2 選中的開源Portal框架... 10

    4.3 評(píng)價(jià)結(jié)果... 10


     

     

    1 概述

           門戶(Portal)一詞從最初被提出,到2003年十月發(fā)布的Portlet1.0規(guī)范以及2005年十二月重新投票通過(guò)的Portlet2.0規(guī)范以來(lái),已經(jīng)有很長(zhǎng)一段歷史了。非常流行的Spring框架也在2.0 M1版本將Potlet MVC框架融入進(jìn)來(lái)。但Portlet MVC框架和現(xiàn)在流行的MVC框架的無(wú)縫整合還是不太理想,直接影響Portlet技術(shù)的普及率。那么此技術(shù)究竟是歷久彌新的技術(shù)還是日漸消亡,最終被取代的技術(shù)?不是本文所要說(shuō)明的重點(diǎn)。本文主要是從一個(gè)Portal初學(xué)者的角度對(duì)Portal的主要概念,應(yīng)用場(chǎng)景等等做一些簡(jiǎn)單的描述,作為本階段Portal研究的一個(gè)總結(jié)報(bào)告,并為將來(lái)做更深層次的研究做好準(zhǔn)備。

    2 基本概念

           這部分主要針對(duì)JSR168規(guī)范中的主要內(nèi)容做了一些說(shuō)明。

    2.1 Portal定義

           Portlet規(guī)范中是這樣描述Portal的,“Portal是一種Web應(yīng)用,通常用來(lái)提供個(gè)性化、單點(diǎn)登錄、聚集各個(gè)信息源的內(nèi)容,并作為信息系統(tǒng)表現(xiàn)層的宿主。聚集是指將來(lái)自各個(gè)信息源的內(nèi)容集成到一個(gè)Web頁(yè)面里的活動(dòng)”。

           Portal功能可以主要分為以下幾個(gè)方面:

           1) 個(gè)性化:個(gè)性化服務(wù)的基本實(shí)現(xiàn)使用戶能從兩個(gè)方面?zhèn)€性化他的頁(yè)面:第一,頁(yè)面的個(gè)性化,用戶用戶根據(jù)自身喜好決定標(biāo)題條的顏色和圖標(biāo);第二,內(nèi)容的個(gè)性化,用戶可以決定他的頁(yè)面上有哪些Portlets。例如,如果我是個(gè)體育迷,我可能會(huì)用一個(gè)能提供我鐘愛球隊(duì)的portlet來(lái)取代股票和新聞的portlets。另外,基于規(guī)則的個(gè)性化,一些在個(gè)性化服務(wù)方面領(lǐng)先的商業(yè)實(shí)現(xiàn)版本允許你自定義為用戶顯示什么樣的頁(yè)面所依據(jù)的標(biāo)準(zhǔn)(如收入和興趣)。在這種情況下,可以設(shè)定像“對(duì)收入為X的用戶顯示饋贈(zèng)商品的portlet”和“對(duì)收入為X用戶顯示打折商品的portlet”這樣的商業(yè)規(guī)則。例如,WebSphere Portal 5的個(gè)性化功能可以基于規(guī)則引擎,用戶喜好(preference)和用戶屬性信息(profile)來(lái)定制用戶相關(guān)的個(gè)性化頁(yè)面。Weblogic Portal的文檔中是這樣描述個(gè)性化內(nèi)容的,“個(gè)性化內(nèi)容就是根據(jù)特定上下文(通常和當(dāng)前用戶相關(guān)聯(lián))而生成的內(nèi)容。在Weblogic Portal中,這個(gè)特定上下文一般包括用戶屬性信息(profile),用戶當(dāng)前的請(qǐng)求(request),用戶當(dāng)前的session,當(dāng)前的日期和時(shí)間(date and time),另外,Portal也支持自定義業(yè)務(wù)規(guī)則來(lái)滿足特定的用戶需求”。

           2) 單點(diǎn)登錄:只需登錄Portal服務(wù)器一次就可以訪問(wèn)所有其它的應(yīng)用,這意味著你無(wú)需再分別登錄每一個(gè)應(yīng)用。例如一旦我登錄了我的intranet網(wǎng)站,我就能訪問(wèn)mail應(yīng)用、IM消息應(yīng)用和其它的intranet應(yīng)用,不必再分別登錄這些應(yīng)用。Portal服務(wù)器會(huì)為你分配一個(gè)通行證庫(kù)。你只需要在mail應(yīng)用力設(shè)定一詞用戶名和密碼,這些信息將以加密的方式存儲(chǔ)在通行證庫(kù)中。在你已登錄到intranet網(wǎng)站并要訪問(wèn)mail應(yīng)用的時(shí)候,portal服務(wù)器會(huì)從通行證庫(kù)中讀取你的通行證替你登錄到mail服務(wù)器上。你對(duì)其它應(yīng)用的訪問(wèn)也將照此處理。

           3) 內(nèi)容聚集:Portlet規(guī)范中規(guī)定portal的主要工作之一是聚集由各種portlet應(yīng)用生成的內(nèi)容。Portlets是一種Web組件,就像servlets一樣是專門為合成頁(yè)面里的內(nèi)容聚集在一起而設(shè)計(jì)的。通常請(qǐng)求一個(gè)portal頁(yè)面會(huì)引發(fā)多個(gè)portlets被調(diào)用。每個(gè)portlet都會(huì)生成標(biāo)記段,并與別的portlets生成的標(biāo)記段組合在一起嵌入到portal頁(yè)面的標(biāo)記內(nèi)。

    2.2 Portlet定義

           1) portletPortlet是被portlet容器所管理的基于Java技術(shù)的web組件,它處理客戶端請(qǐng)求并生成動(dòng)態(tài)內(nèi)容。通常請(qǐng)求一個(gè)portal頁(yè)面引發(fā)多個(gè)portlets被調(diào)用,每個(gè)portlet都會(huì)生成一個(gè)標(biāo)記段,并與別的portlets生成的標(biāo)記段組合在一起形成一個(gè)完整的portal頁(yè)面展示給用戶。每個(gè)portlet的生命周期被portlet容器所管理。每個(gè)portlet可能隨當(dāng)前登錄用戶不同而生成不同的內(nèi)容。

           2) portlet容器:Portlet容器負(fù)責(zé)管理portlets的生命周期并提供portlets的運(yùn)行環(huán)境。它還提供portlet preferences的持久化存儲(chǔ)功能。Portlet容器從portal接受請(qǐng)求并分配到它所管理的potlets中去執(zhí)行。

           3) portletsservlets的關(guān)系:

           portlets在以下方面與servlets相似:

    l         portlets是基于Java技術(shù)的web組件;

    l         porlets由特定的容器管理;

    l         portlets生成動(dòng)態(tài)內(nèi)容;

    l         portlets的生命周期由容器管理;

    l         portlets通過(guò)請(qǐng)求/響應(yīng)模式與web客戶端交互。

           portlets在以下方面與servlets相異:

    l         portlets只能生成標(biāo)記段,而不是整個(gè)文檔;

    l         portlets沒(méi)有可供直接訪問(wèn)的URL地址。不過(guò)你還是能夠讓別人通過(guò)URL訪問(wèn)到portlet,你可以把包含該portlet的頁(yè)面的URL發(fā)給他;

    l         web客戶端通過(guò)一個(gè)portal系統(tǒng)和portlets交互;

    l         portlets包含action請(qǐng)求和render請(qǐng)求;

    l         portlets有預(yù)先定義好的portlet模式和窗口狀態(tài);

    l         portlets可以在一個(gè)portal頁(yè)面上同時(shí)存在多個(gè);

    l         portlets不能在響應(yīng)中設(shè)置字符集編碼和HTTP headers;

    portletsservlets/JSP的通訊:

     

    portlet容器和servlet容器的關(guān)系:

    portlet容器是servlet容器的擴(kuò)展,于是portlet容器一般是建立在servlet容器之上并且具有servlet容器所有的功能,portlet容器支持Servlet規(guī)范2.3。

     

           4) portlets附加的功能:

    l         設(shè)置參數(shù)的持久化存儲(chǔ):portlets提供了一個(gè)PortletPreferences對(duì)象用來(lái)保存用戶的設(shè)置參數(shù)。這些參數(shù)被存入一個(gè)持久化數(shù)據(jù)庫(kù),這樣服務(wù)器重啟后數(shù)據(jù)依然有效。開發(fā)者不必關(guān)心這些數(shù)據(jù)存儲(chǔ)的具體實(shí)現(xiàn)機(jī)制。

    l         請(qǐng)求處理:portlets提供了更為細(xì)粒度的請(qǐng)求處理。對(duì)于用戶在portlet上動(dòng)作時(shí)向該portlet發(fā)出的請(qǐng)求(一種稱為活躍期的狀態(tài)),或者因用戶在其它portlet上動(dòng)作而引發(fā)的刷新頁(yè)面請(qǐng)求,Portal服務(wù)器提供了兩種不同的回調(diào)方法來(lái)處理。

    l         Portlet模式:portlets用模式的概念來(lái)表示用戶在做什么。JSR 168定義了三種Portlet模式:VIEW、EDITHELP。一個(gè)portlet實(shí)例在任何時(shí)候都可以恰巧在一種 portlet模式下。其他自定義portlet模式(如配置和源)都是可能的。VIEW模式是默認(rèn)的模式。Portlet規(guī)范建議EDIT模式允許portlet用戶定制portlet實(shí)例,以及HELP模式顯示關(guān)于portlet的用法信息。Portlet必須支持VIEW模式,但在portlet中對(duì)EDIT模式和HELP模式的支持是可選的。在使用mail應(yīng)用的時(shí)候,你可能會(huì)用它來(lái)讀信、寫信或檢查信件――這些都是mail應(yīng)用的預(yù)定功能,Portlets通常以VIEW模式提供這些功能。但還有一些活動(dòng),像指定刷新時(shí)間或(重新)設(shè)置用戶名和密碼,這些活動(dòng)允許用戶定制應(yīng)用的行為,因此它們用的是EDIT模式。Mail應(yīng)用的幫助功能用的是HELP模式。

    l         窗口狀態(tài):窗口狀態(tài)決定了portal頁(yè)面上留給portlet生成內(nèi)容的空間。JSR 168定義了三種Window狀態(tài):NORMAL、MINIMIZEDMAXIMIZED。Portlet實(shí)例任何時(shí)候都可以恰好是一種window狀態(tài)。其他自定義window狀態(tài)(如半頁(yè))也是可能的。在NORMAL狀態(tài)下,portlet占了屏幕區(qū)的一小部分。屏幕狀態(tài)與其他portlet共享。在MINIMIZED狀態(tài)下,portlet的內(nèi)容被隱藏, portlet只顯示為標(biāo)題條。在MAXIMIZED狀態(tài)下,portlet的內(nèi)容占屏幕區(qū)的大部分。其他共享同一頁(yè)面的portletMAXIMIZED狀態(tài)下被隱藏。

    l         用戶信息:通常portlets向發(fā)出請(qǐng)求的用戶提供個(gè)性化的內(nèi)容,為了能更加行之有效,portlets需要訪問(wèn)用戶的屬性信息,如姓名、email、電話等。Portlet API為此提供了用戶屬性的概念,開發(fā)者能夠用標(biāo)準(zhǔn)的方式訪問(wèn)這些屬性,并由管理員負(fù)責(zé)在這些屬性與真實(shí)的用戶信息數(shù)據(jù)庫(kù)(通常是LDAP服務(wù)器)之間建立映射關(guān)系。

    l         portlet context:每個(gè)portlet關(guān)聯(lián)一個(gè)PortletContext對(duì)象的實(shí)例。通過(guò)此對(duì)象,可以獲得上下文相關(guān)的初始化參數(shù),設(shè)置和保存一些上下文相關(guān)的屬性以供別的servletsportlets獲取。另外還可以通過(guò)它得到一個(gè)request dispatcher對(duì)象來(lái)轉(zhuǎn)發(fā)到servletsJSPs。

    2.3 Portal頁(yè)面的元素

    2.3.1顯示了Portal頁(yè)面的各種元素。

     

    2.3.1 portal頁(yè)面的元素

    每個(gè)portlet頁(yè)面由一個(gè)或多個(gè)portlet窗口組成,每個(gè)portlet窗口又分為兩部分:一個(gè)是外觀,它決定了portlet窗口的標(biāo)題條、控制和邊界的樣式;另一個(gè)是portlet段,它由portlet應(yīng)用填充。Portal服務(wù)器決定了portal頁(yè)面的整體觀感,像標(biāo)識(shí)、標(biāo)題條顏色、控制圖標(biāo)等。通過(guò)修改幾個(gè)JSPcss模板文件就可以改變portal的整個(gè)觀感。

    2.4 Portlet生命周期

           為了成功地創(chuàng)建portlet,您必須遵照portlet生命周期。javax.portlet.Portlet接口中的方法定義了該生命周期,這些生命周期方法是init()render()processAction()destroy()。

           1) 初始化

           當(dāng)啟動(dòng)一個(gè)portlet應(yīng)用或懶加載條件下portal容器需要某個(gè)portlet來(lái)執(zhí)行來(lái)自客戶端的請(qǐng)求時(shí),需要執(zhí)行init()方法。它用于獲得所需的任何昂貴資源(如數(shù)據(jù)庫(kù)連接),并執(zhí)行其它一次性活動(dòng)。在portlets初始化時(shí),經(jīng)常需要用到portletConfig對(duì)象獲取初始化參數(shù)和各種資源。

           2) 處理請(qǐng)求

           通過(guò)調(diào)用processAction()方法處理不同種類的動(dòng)作和render()方法呈現(xiàn)內(nèi)容。通常是通過(guò)portlets創(chuàng)建的URL提交請(qǐng)求。Portlet URLs包括action URLsrender URLs兩種類型。一般情況下,一個(gè)aciton URL對(duì)應(yīng)一個(gè)action請(qǐng)求和當(dāng)前portle頁(yè)面上所有的portletsrender請(qǐng)求,一個(gè)render URL對(duì)應(yīng)當(dāng)前portle頁(yè)面上所有的portletsrender請(qǐng)求。但是如果portlet使用了緩存技術(shù),則portal/portlet容器可能不會(huì)調(diào)用render()方法,而直接從緩存中取出展現(xiàn)標(biāo)記段。

    l         動(dòng)作處理

    調(diào)用processAction()方法,在此方法中可以獲得ActionRequestActionResponse兩個(gè)參數(shù)。通過(guò)ActionRequest參數(shù),可以獲取action請(qǐng)求的參數(shù),窗口狀態(tài),porlet模式,portal上下文對(duì)象,portlet會(huì)話對(duì)象和portlet preference數(shù)據(jù)。在處理action請(qǐng)求時(shí),可以轉(zhuǎn)發(fā)到一個(gè)指定的URL。通過(guò)ActionResponse對(duì)象,portlet可以改變它的模式和窗口狀態(tài)。

    l         呈現(xiàn)內(nèi)容

    調(diào)用render()方法,在此方法可以獲得RenderRequest參數(shù)和RenderResponse兩個(gè)參數(shù)。通過(guò)RenderRequest參數(shù),可以獲取action請(qǐng)求的參數(shù),窗口狀態(tài),porlet模式,portal上下文對(duì)象,portlet會(huì)話對(duì)象和portlet preference數(shù)據(jù)。通過(guò)RenderResponse對(duì)象可以生成呈現(xiàn)內(nèi)容或委托給servletJSP生成呈現(xiàn)內(nèi)容。但也有一些限制:第一,生成HTML標(biāo)記段不得使用下列標(biāo)簽:base, body, iframe, frame, frameset, head, htmltitle;第二,生成XHTML和基于XHTML標(biāo)記段不得使用下列標(biāo)簽:base, body, iframe, head, htmltitle。

    javax.portlet.GenericPortlet類提供了呈現(xiàn)內(nèi)容的一些默認(rèn)功能。我們創(chuàng)建的大多數(shù)portlet將會(huì)擴(kuò)展javax.portlet.GenericPortlet類,而不是直接實(shí)現(xiàn)javax.portlet.Portlet接口。GenericPortlet類實(shí)現(xiàn)了render()方法。如果portletwindow狀態(tài)被最小化,那么render()方法不能做任何事情。如果portletwindow狀態(tài)不是最小化,那么render()方法設(shè)置在portlet.xml文件中指定的標(biāo)題,并調(diào)用doDispatch()方法。根據(jù)Portlet模式, doDispatch()方法適當(dāng)?shù)卣{(diào)用doView()doEdit()doHelp()方法。這樣,由于GenericPortlet類幫助實(shí)現(xiàn)render()方法,并且提供doView()doEdit()doHelp()方法來(lái)覆蓋,因此GenericPortlet類比Portlet接口更便于擴(kuò)展。

    3) 完成

    當(dāng)portlet的實(shí)例被撤銷部署時(shí),使用destroy()方法來(lái)釋放這些資源。

    2.5 Portlet標(biāo)簽庫(kù)

           使用portlet標(biāo)簽庫(kù)允許我們?cè)?/span>JSP中獲取portlet特定的元素,例如RenderRequest對(duì)象和RenderResponse對(duì)象。還可以在JSP中生成portlet URL。在JSP頁(yè)面中必須有類似下面的聲明:

           <%@ taglib uri=”http://java.sun.com/portlet” prefix=”portlet” %>

    2.6 JSR168WSRP

           在實(shí)際的應(yīng)用場(chǎng)景中,我們經(jīng)常需要把不同的應(yīng)用程序集成在一個(gè)統(tǒng)一的用戶界面上。Portal技術(shù)可以很好的解決這一問(wèn)題,但需要開發(fā)一定數(shù)量的portlets。但有時(shí)我們需要把同一個(gè)portlet部署在不同的門戶中,此時(shí)可能我們要費(fèi)很大的力氣重新為每個(gè)門戶重新開發(fā)相同的portlet。有很多通用的portlets在升級(jí)應(yīng)用服務(wù)器時(shí)不能很好的做到重用。此時(shí)我們?cè)趺崔k?

           我們只有遵循業(yè)界公認(rèn)的標(biāo)準(zhǔn),標(biāo)準(zhǔn)可以幫助我們減輕移植和互操作的帶來(lái)的痛苦。隨著門戶標(biāo)準(zhǔn)JSR168和用于遠(yuǎn)程Web服務(wù)portletWSRP)的廣泛采用,我們將能夠很容易的做到重用和維護(hù)。

           總的來(lái)講,這些新標(biāo)準(zhǔn)正在給門戶部署的本質(zhì)帶來(lái)根本性的變化,伴隨而來(lái)的是門戶開發(fā)商市場(chǎng)的劇變。越來(lái)越多的客戶在根據(jù)門戶的總體體系結(jié)構(gòu)是否符合該企業(yè)來(lái)選擇門戶技術(shù),而不是根據(jù)門戶的一組專用的特性,例如portlets的數(shù)目來(lái)選擇。

           1) JSR168

           JSR168規(guī)范為創(chuàng)建portlets建立了標(biāo)準(zhǔn)的API。它是為實(shí)現(xiàn)portlet、基于Java的門戶服務(wù)器和其他Web應(yīng)用程序之間的互操作性而設(shè)計(jì)的?,F(xiàn)在大多數(shù)開源的和商用的Portal產(chǎn)品都支持JSR168。因此開發(fā)符合JSR168規(guī)范的portlet的客戶可以很容易的將portlets從某一開發(fā)商的門戶移到另一個(gè)開發(fā)商的門戶中。此外,客戶現(xiàn)在還可以使用迅速增長(zhǎng)的開箱即用、符合標(biāo)準(zhǔn)的portlets。按照Java標(biāo)準(zhǔn)化組織(Java Community Process)所述,JSR168 portlet擁有一個(gè)適用于所有門戶客戶端的簡(jiǎn)單的,標(biāo)準(zhǔn)的API,支持多種類型的客戶端(多設(shè)備,多瀏覽器),支持本地化和國(guó)際化,允許門戶應(yīng)用程序的熱部署和重新部署,并包含聲明性安全(與servletEJB規(guī)范中使用的機(jī)制相同)。

           2) WSRP

           JSR168標(biāo)準(zhǔn)獲取的益處被WSRP進(jìn)一步得到增強(qiáng)。WSRP是由OASIS(一個(gè)由開發(fā)電子商務(wù)標(biāo)準(zhǔn)的行業(yè)專家所組成的非贏利性社團(tuán))創(chuàng)建,它使得開發(fā)的portlets可以被遠(yuǎn)程的門戶展現(xiàn)出來(lái)。WSRP使原來(lái)極難實(shí)現(xiàn)的功能成為可能。例如,部署一次portlet,可以把它們傳遞到任何符合標(biāo)準(zhǔn)的門戶中去;將第三方提供的portlets整合進(jìn)自己的門戶中,增強(qiáng)來(lái)自不同開發(fā)商的門戶之間的互操作性。

    3 Portal的功能

           JSR168規(guī)范中只定義了Portal所應(yīng)具有的功能的一個(gè)最小集合。然而在現(xiàn)實(shí)場(chǎng)景中,不論是開源的portal框架實(shí)現(xiàn),還是商業(yè)Portal產(chǎn)品都在標(biāo)準(zhǔn)的基礎(chǔ)上作了擴(kuò)展。總的說(shuō)來(lái),一般Portal可能會(huì)包含以下功能,見表3.1

    功能

    描述

    內(nèi)容聚合

    能夠把各種不同應(yīng)用的內(nèi)容聚合到一個(gè)統(tǒng)一的頁(yè)面呈現(xiàn)給用戶。

    基于角色的視圖定制

    能夠基于組織機(jī)構(gòu)中不同的用戶的角色生成不同的視圖內(nèi)容。例如,人力資源總監(jiān)和財(cái)務(wù)經(jīng)理登錄后所看到的頁(yè)面也是不同的。

    個(gè)性化

    用戶能夠根據(jù)個(gè)人喜好定制符合自己風(fēng)格的頁(yè)面和內(nèi)容。例如,小王喜歡淡藍(lán)色的格調(diào),并且投資股票,則他可以選擇一個(gè)淡藍(lán)色風(fēng)格的主題,并且使用一個(gè)已經(jīng)定制好的股票portlet,允許小王設(shè)定此portlet的自動(dòng)刷新時(shí)間和自選股等。

    單點(diǎn)登錄

    只需登錄Portal服務(wù)器一次就可以訪問(wèn)所有其它的應(yīng)用,這意味著你無(wú)需再分別登錄每一個(gè)應(yīng)用。

    協(xié)作功能

    一些Portal框架可能會(huì)提供復(fù)雜的portlets用于聊天,應(yīng)用程序共享,白板,在線會(huì)議,論壇等。

    國(guó)際化

    根據(jù)locale的不同呈現(xiàn)不同國(guó)家的文字。

    工作流

    這里主要指支持跨越不同數(shù)據(jù)源和應(yīng)用的工作流。

    支持不同的客戶端

    包括主流web瀏覽器,PDA等。

    3.1 Portal功能

    4 部分開源Portal框架的分析和比較

           開源框架中我實(shí)際接觸到的兩個(gè)開源框架就LiferayJetSpeed,而且時(shí)間不長(zhǎng),以我的經(jīng)驗(yàn)很難做出客觀的評(píng)價(jià)。在網(wǎng)上查了一些資料,有一份比較權(quán)威的報(bào)告給出了一些評(píng)價(jià)標(biāo)準(zhǔn)和測(cè)試數(shù)據(jù),應(yīng)該能夠比較客觀的給出一些結(jié)論。

    4.1 評(píng)價(jià)標(biāo)準(zhǔn)

           每個(gè)開源框架都有其優(yōu)點(diǎn)和缺點(diǎn),如果沒(méi)有一套全面的標(biāo)準(zhǔn)來(lái)評(píng)價(jià),很難說(shuō)清楚哪個(gè)框架更好。其實(shí)從做項(xiàng)目的觀點(diǎn)出發(fā),沒(méi)有最好的技術(shù),只有最適合的技術(shù)。但我們一般都會(huì)在選擇某項(xiàng)技術(shù)的時(shí)候,盡可能的追求功能完善,易于開發(fā)和擴(kuò)展,文檔全面等等。下面是這份權(quán)威資料給出的標(biāo)準(zhǔn):

           1) 遵循JSR168規(guī)范

           這是這些標(biāo)準(zhǔn)中最重要的一個(gè)要求,對(duì)規(guī)范支持得好,意味著做到很好的重用和別的Portal產(chǎn)品的交互等。

           2) 便于安裝

           包括數(shù)據(jù)庫(kù)的配置以及在web應(yīng)用服務(wù)器中的發(fā)布等。

           3) 文檔

           是否有詳細(xì)的安裝文檔,開發(fā)文檔和用戶手冊(cè)等。

           4) 在線支持

           包括開發(fā)社區(qū),Wiki,郵件列表等,當(dāng)使用Portal產(chǎn)品遇到問(wèn)題時(shí)是否能快捷的尋找到解決問(wèn)題的方法。

           5) Potal管理

           包括管理節(jié)目是否友好,方便,易于添加用戶管理,角色管理,分類管理,布局,皮膚管理,增加和刪除portlets等等。

           6) portlet資源庫(kù)

           一般portal框架都能附帶的發(fā)布一些可被重用的portlets。例如郵件portlet,日程表portlet,搜索portlet等等。這里我們主要的評(píng)價(jià)標(biāo)準(zhǔn)是這些portlets是否能被很好的復(fù)用。

           7) 性能

           包括portal框架的啟動(dòng)時(shí)間,portlet的裝載時(shí)間,數(shù)據(jù)庫(kù)的訪問(wèn)時(shí)間等等。

           8) 安全

           很多portal框架都有默認(rèn)的安全機(jī)制,但默認(rèn)的認(rèn)證和授權(quán)機(jī)制遠(yuǎn)遠(yuǎn)不能滿足某些大項(xiàng)目的要求。在這里,主要考慮portal框架是否能夠很好的和JAAS,SSO,SSL等安全技術(shù)整合以及整合的難易程度等。

           9) 技術(shù)

           不同的portal框架基于不同的技術(shù)開發(fā),同時(shí)可能要求portlet開發(fā)人員也使用同樣的技術(shù),例如StrutsJSF,Spring,Hibernate,TilesEJB以及Web services等技術(shù)。

           10) Portal特性

           通常情況下Portal框架除了作為一個(gè)portal/portlet容器外,還附帶一些很有用的特性,例如內(nèi)容管理系統(tǒng)(CMS),工作流(Workflow),管理工具,監(jiān)控工具等。

           11) 服務(wù)器兼容性

           此標(biāo)準(zhǔn)主要檢驗(yàn)portal框架是否能夠很好的運(yùn)行在大部分的服務(wù)器中,包括Tomcat,JBossWeblogicWebsphere等主力的服務(wù)器。

           12) WSRP標(biāo)準(zhǔn)

           對(duì)The Web Services for Remote Portlets(WSRP)規(guī)范的支持。

    4.2 選中的開源Portal框架

           在這份標(biāo)準(zhǔn)中,被選中來(lái)作評(píng)價(jià)和測(cè)試的框架一般都是在某個(gè)行業(yè)使用比較廣泛或當(dāng)前比較流行的開源框架,但可能也有漏掉一些相當(dāng)不錯(cuò)的開源框架,例如Aapche JetSpeed。下面列出被選中的框架及其被選中的簡(jiǎn)短理由:

    l         Sakai 1.5(廣泛的用于Virtual Research Environment(VRE)領(lǐng)域)

    l         uPortal(廣泛的用于Academic Institutes work領(lǐng)域)

    l         GridSphere(第一個(gè)支持JSR168規(guī)范的開源portal框架)

    l         eXo平臺(tái)(當(dāng)前非常流行)

    l         Liferay(當(dāng)前非常流行,良好的用戶界面以及豐富的內(nèi)建portlets

    l         StringBeans(非常易用)

    對(duì)于每個(gè)portal框架,我將不再做詳細(xì)介紹,有興趣的可以去它們的網(wǎng)站或google一下。

    4.3 評(píng)價(jià)結(jié)果

           下面將基于4.1給出的評(píng)價(jià)標(biāo)準(zhǔn),仔細(xì)的給每個(gè)開源Portal框架打分,1~5分,其中5分是滿分,最后統(tǒng)計(jì)總分,就是我們?cè)u(píng)價(jià)的最優(yōu)開源Portal框架,見表4.3.1

    標(biāo)準(zhǔn)

    Portal框架

     

    Sakai 1.5

    uPortal

    GridSphere

    eXo平臺(tái)

    Liferay

    StringBeans

    遵循JSR168規(guī)范

    0

    5

    5

    5

    5

    5

    便于安裝

    3

    5

    5

    5

    5

    5

    文檔

    2

    2

    4

    3

    3

    5

    在線支持

    3

    3

    4

    4

    3

    5

    Potal管理

    3

    5

    4

    5

    4

    5

    自定義

    4

    3

    4

    3

    5

    4

    portlet資源庫(kù)

    4

    3

    4

    3

    5

    3

    性能

    2

    4

    3

    4

    3

    3

    安全

    3

    4

    3

    4

    4

    4

    技術(shù)

    3

    3

    4

    5

    4

    3

    Portal特性

    2

    2

    3

    5

    4

    2

    服務(wù)器兼容性

    3

    3

    3

    4

    5

    3

    WSRP標(biāo)準(zhǔn)

    0

    3

    0

    3

    3

    0

    合計(jì)

    35

    49

    51

    57

    58

    51

    4.3.1 評(píng)價(jià)結(jié)果

           基于上表的評(píng)分,每個(gè)項(xiàng)目可以基于自己的特性和對(duì)各個(gè)Portal框架的了解程度,酌情的調(diào)整打分,以選擇最適合自己項(xiàng)目的Portal框架。

    posted on 2007-05-28 09:59 junky 閱讀(536) 評(píng)論(0)  編輯  收藏 所屬分類: portal

    主站蜘蛛池模板: 国产成人免费爽爽爽视频| 久久国产色AV免费观看| a级片免费观看视频| 久久青草91免费观看| 国产人成免费视频网站| 四虎影视免费在线| 亚洲国产中文v高清在线观看| 亚洲人成伊人成综合网久久久| 日木av无码专区亚洲av毛片| 亚洲国产熟亚洲女视频| 日韩精品无码永久免费网站| 无人在线观看免费高清| 最近中文字幕免费mv视频7| 免费成人黄色大片| 亚洲av无码国产精品色午夜字幕| 亚洲六月丁香六月婷婷色伊人| 国产亚洲精品欧洲在线观看| 91成人免费观看在线观看| 免费h片在线观看网址最新| 国产男女猛烈无遮挡免费网站| 国产V亚洲V天堂A无码| 亚洲伊人久久大香线蕉| 激情吃奶吻胸免费视频xxxx| 久久国产精品免费看| 女人与禽交视频免费看| 亚洲综合无码AV一区二区| 亚洲一区二区三区高清视频| a一级毛片免费高清在线| 4455永久在线观免费看| 免费女人18毛片a级毛片视频| 久久久国产精品亚洲一区| 污污视频免费观看网站| 69视频在线观看免费| 亚洲一区二区三区无码影院| 亚洲国产精品白丝在线观看| 曰批全过程免费视频免费看| 麻豆国产精品免费视频| 亚洲性猛交XXXX| 亚洲精品色播一区二区 | 亚洲日韩中文字幕无码一区| 成人片黄网站色大片免费观看APP|