專利名稱:聚合用于在客戶端環(huán)境中使用的portlet而不依賴服務(wù)器資源的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及門戶(portal)和portlet的領(lǐng)域,并特別涉及聚合用于在客 戶端環(huán)境中使用的portlet,而在使用所聚合的portlet時(shí)不需要服務(wù)器資源。
背景技術(shù):
向用戶提供因特網(wǎng)或內(nèi)聯(lián)網(wǎng)上的基于Web的界面正變成用于散布信息的 普通的商業(yè)方法。Web門戶和Web portlet的使用正變成向用戶提供可定制的 Web內(nèi)容的優(yōu)選方法。Web門戶是可提供廣泛的資源和信息的Web站點(diǎn)或服 務(wù),如電子郵件、搜索引擎、廣告、用戶專用報(bào)告、個(gè)性化聯(lián)系以及任務(wù)管 理功能、定制的新聞饋送、本地天氣等。Web門戶可以包括多個(gè)Webportlet。 許多門戶允許用戶可配置的設(shè)置,并且允許用戶定制頁面布局以適合他們的 偏好。例如,門戶用戶可以定制門戶的布局以選擇性地包括/排除用于天氣、 電子郵件通知、日歷、新聞饋送等的portlet。
包含在門戶或聚合網(wǎng)頁中的每個(gè)portlet是面向用戶的組件。Web portlet 通常呈現(xiàn)(render)在portlet容器中,并且可以包括靜態(tài)內(nèi)容以及動(dòng)態(tài)內(nèi)容。 每個(gè)portlet可以關(guān)聯(lián)于portlet特定內(nèi)容源,所述portlet特定內(nèi)容源可以是不 同于關(guān)聯(lián)于該門戶的內(nèi)容源的源、或是不同于關(guān)聯(lián)于其它portlet的內(nèi)容源的 源。類似于門戶,portlet可以包括用戶定制特性,例如,定制天氣portlet以 提供用戶本地區(qū)域的天氣預(yù)報(bào)。
將portlet i殳計(jì)為以聚合的方式運(yùn)行并且不消耗(consume )全部響應(yīng)或^L 圖(view)。也就是說,自然地,portlet總是與其它portlet共享網(wǎng)頁。由于此 原因,例如JAVA規(guī)范請求(JSR) 168的現(xiàn)有的portlet規(guī)范不包括例如使用 URL的直接訪問portlet的機(jī)制。作為替代,保持至門戶應(yīng)用和其聚合框架的 訪問。例如,通過例如JAVA服務(wù)器頁面(JSP)標(biāo)簽庫的標(biāo)準(zhǔn)化庫來支持在 網(wǎng)頁上聚合多個(gè)portlet的基本能力。
傳統(tǒng)的Web門戶結(jié)構(gòu)僅依賴于門戶服務(wù)器、或執(zhí)行portlet服務(wù)功能的應(yīng) 用服務(wù)器,以便將portlet內(nèi)容動(dòng)態(tài)地聚合為由此產(chǎn)生的門戶頁面,例如門戶JSP。為了執(zhí)行動(dòng)態(tài)聚合,門戶服務(wù)器利用大量的計(jì)算資源,如處理循環(huán)、內(nèi)
存以及帶寬。對于每個(gè)聚合的portlet,服務(wù)器一側(cè)的portlet容器提供服務(wù)的 核心集合,以實(shí)例化、調(diào)用和銷毀portlet。門戶級(jí)別聚合功能管理每個(gè)portlet 的輸入/輸出、門戶與每個(gè)portlet之間的數(shù)據(jù)傳遞、頁面級(jí)別刷新操作等。
不存在允許客戶端在不存在門戶服務(wù)器的情況下利用 一組portlet的已知 解決方案。例如,當(dāng)客戶端設(shè)備缺乏網(wǎng)絡(luò)連通性時(shí),現(xiàn)有的解決方案不允許 該客戶端設(shè)備呈現(xiàn)(render)門戶。由于越來越多的生產(chǎn)性應(yīng)用(例如桌面辦 公套裝)是使用基于Web的技術(shù)(例如門戶)而實(shí)現(xiàn)的,不能在離線的狀態(tài) 下操作會(huì)是主要缺點(diǎn)。例如,如果基于門戶的軟件解決方案在離線時(shí)繼續(xù)運(yùn) 行,那么,即使一些功能性降級(jí)(即,當(dāng)客戶端離線時(shí),可以自動(dòng)禁用(disable) 明確地依賴于網(wǎng)絡(luò)連通性的功能),這也將是有利的。
此夕卜,允許門戶在僅客戶端的環(huán)境(client only environment)中運(yùn)行將允 許對于缺乏企業(yè)信息技術(shù)(IT)基礎(chǔ)結(jié)構(gòu)(其內(nèi)通常包括門戶服務(wù)器)的 小商業(yè)來說,縮減為企業(yè)開發(fā)的基于門戶的軟件應(yīng)用。這可以為軟件開發(fā)者
調(diào)節(jié)以創(chuàng)建小商業(yè)解決方案。此外,允許用于小商業(yè)和/或?qū)嶓w的基于門戶的 軟件解決方案的僅客戶端的變化,這允許不需要大量用戶再培訓(xùn)的可調(diào)整的 升級(jí)途徑。盡管有這些潛在的優(yōu)點(diǎn),但不存在允許客戶端在僅客戶端的環(huán)境 中利用門戶的已知解決方案或系統(tǒng)。
發(fā)明內(nèi)容
本發(fā)明公開了 一種客戶端portlet容器,其允許在僅客戶端的環(huán)境中利用 門戶。也就是說,本發(fā)明提供了一種解決方案,其將一組portlet聚合到客戶 端可查看的門戶頁面,而不依賴于例如應(yīng)用服務(wù)器或門戶服務(wù)器的資源的服 務(wù)器資源。網(wǎng)絡(luò)連接狀態(tài)或斷開狀態(tài)下的客戶端均可以利用該解決方案。本
容器被例如JAVA服務(wù)器頁面(JSP)文件的聚合網(wǎng)頁的標(biāo)簽引用。
在一個(gè)實(shí)施例中,可以開發(fā)聚合網(wǎng)頁,其合并被設(shè)計(jì)用來聚合用戶界面 中的多個(gè)portlet的自定義(custom)標(biāo)簽、以及基于HTML的數(shù)據(jù)。這些聚 合網(wǎng)頁可以包含自定義標(biāo)簽,其可以被編譯,并被展開到客戶端portlet容器。 可以配置客戶端portlet容器,以本地呈現(xiàn)這些預(yù)編譯的門戶頁面。在一個(gè)布置中,可以提供可以合并在集成開發(fā)環(huán)境(IDE)中的工具解決方案,其允許 軟件開發(fā)者創(chuàng)建包括自定義標(biāo)簽的聚合網(wǎng)頁。在另一布置中,可以使用開發(fā)
翻譯器(translator)工具來從現(xiàn)有的門戶配置文件自動(dòng)生成聚合網(wǎng)頁。在另 一布置中,該翻譯器工具可以是從門戶配置文件自動(dòng)生成聚合網(wǎng)頁的運(yùn)行時(shí) 翻譯引擎。
可以根據(jù)與這里給出的材料相一致的許多方面而實(shí)施本發(fā)明。例如,本 發(fā)明的一個(gè)方面可以包括用于聚合和利用portlet的方法。該方法可以包括識(shí) 別客戶端環(huán)境中的聚合網(wǎng)頁的步驟,其中,聚合網(wǎng)頁指定門戶。可以在聚合 網(wǎng)頁中建立至一個(gè)或多個(gè)portlet的控制鏈接,每個(gè)鏈接與客戶端portlet容器 相關(guān)聯(lián)??梢詮膒ortlet頁面或portlet應(yīng)用將portlet內(nèi)容插入到每個(gè)客戶端 portlet容器中??梢栽诳蛻舳谁h(huán)境的瀏覽器界面中呈現(xiàn)聚合網(wǎng)頁。
本發(fā)明的另一實(shí)施例可以包括portlet處理方法。在該方法中,可以生成 被傳遞至客戶端的預(yù)編譯的portlet聚合頁面。客戶端可以呈現(xiàn)portlet聚合頁 面的內(nèi)容,而不依賴于服務(wù)器資源。例如,客戶端可以使用由該頁面引用的 一個(gè)或多個(gè)客戶端一側(cè)的portlet容器來呈現(xiàn)portlet內(nèi)容。
應(yīng)當(dāng)注意,可以將本發(fā)明的各種方面實(shí)現(xiàn)為用于控制計(jì)算設(shè)備來實(shí)現(xiàn) 這里描述的功能的程序、或用于使得計(jì)算設(shè)備能夠執(zhí)行對應(yīng)于這里公開的步 驟的處理的程序。可以通過將此程序存儲(chǔ)在^f茲盤、光盤、半導(dǎo)體存儲(chǔ)器或任 何其它記錄介質(zhì)中而提供該程序。還可以作為經(jīng)由載波傳遞的、數(shù)字編碼的 信號(hào)來提供該程序。所描述的程序可以是單個(gè)程序,或者可以;陂實(shí)現(xiàn)為多個(gè) 子程序,每個(gè)子程序在單個(gè)計(jì)算設(shè)備內(nèi)交互,或者跨越網(wǎng)絡(luò)空間以分布式方 式交互。
服務(wù)代理響應(yīng)于服務(wù)請求而操控的機(jī)器執(zhí)行的方法。
附圖中示出了當(dāng)前優(yōu)選的實(shí)施例,然而,應(yīng)當(dāng)理解,本發(fā)明不限于所示 的精確布置和手段。
圖1是根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的、用于在僅客戶端的環(huán)境 中呈現(xiàn)門戶的系統(tǒng)的示意圖。
圖2是根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的、與在僅客戶端的環(huán)境中
7工作的門戶解決方案結(jié)合使用的開發(fā)工具解決方案的示意圖。
圖3是圖示根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的、用于創(chuàng)建能夠在客 戶端環(huán)境中使用的聚合頁面的各種解決方案的流程圖。
圖4是根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的方法的流程圖,其中服務(wù)
代理可以配置允許在僅客戶端的環(huán)境中呈現(xiàn)門戶的系統(tǒng)。
具體實(shí)施例方式
圖1是根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的、用于在僅客戶端的環(huán)境
110中呈現(xiàn)門戶的系統(tǒng)100的示意圖。不像依賴于服務(wù)器一側(cè)的門戶應(yīng)用和 聚合框架的傳統(tǒng)門戶實(shí)現(xiàn),系統(tǒng)100允許在客戶端環(huán)境110中呈現(xiàn)門戶。
更具體地,門戶引擎114可以接收聚合頁面120,其可以是包括嵌入的 標(biāo)簽122的預(yù)編譯的網(wǎng)頁120。這些可以是專用標(biāo)簽122,其用于為其中可以 呈現(xiàn)portlet內(nèi)容124的專用的客戶端一側(cè)的portlet容器115提供控制鏈接。 瀏覽器引擎117可以在客戶端一側(cè)的界面118中呈現(xiàn)聚合頁面120。界面118 可以包括例如具有由聚合頁面120指定的布局的portletA、 portletB和portletC。 可以由鏈接到客戶端portlet容器115的特定portlet頁面124提供每個(gè) portletA-C的內(nèi)容。因?yàn)榭蛻舳谁h(huán)境110可以呈現(xiàn)門戶而不需要服務(wù)器一側(cè)的 資源,所以,環(huán)境110可以在網(wǎng)絡(luò)140斷開才莫式下操:作。
在一個(gè)實(shí)施例中,模式切換引擎116可以被包括在環(huán)境110中,以便使 得系統(tǒng)100能夠在連接模式下操作,其中,接收到更新的內(nèi)容。在連接模式 下,可以從來自網(wǎng)絡(luò)服務(wù)器(Web server) 144的門戶頁面142,而非從本地 存儲(chǔ)的門戶頁面124,獲得portletA-C的內(nèi)容。portlet頁面124可以是上次環(huán) 境110處于連接的模式下時(shí)從網(wǎng)絡(luò)服務(wù)器124先前獲得的本地緩存的頁面。 也就是說,當(dāng)環(huán)境110獲得頁面142時(shí),這些頁面142可以自動(dòng)地耳又代本地 數(shù)據(jù)存儲(chǔ)中先前緩存的頁面124。如果至網(wǎng)絡(luò)140的連接丟失,則可以使用 最近緩存的頁面124以提供portlet內(nèi)容。
在另一實(shí)施例中,當(dāng)處于連接狀態(tài)下時(shí),模式切換引擎116可以用服務(wù) 器130提供的聚合頁面136來替換頁面120。當(dāng)完成此時(shí),利用服務(wù)器130 的門戶引擎134而非門戶引擎114。此外,可以從服務(wù)器130獲得聚合頁面 120的內(nèi)容,從而更新聚合頁面120,以匹配在聚合頁面136中反映的任何更 新。在另外一實(shí)施例中,客戶端環(huán)境110可以包括內(nèi)部聚合引擎112,其從門 戶配置文件125創(chuàng)建聚合頁面126。頁面126還可以包括用于客戶端portlet 容器115的專用標(biāo)簽122,因此,可以由環(huán)境110以與處理頁面120相同的方 式來處理。當(dāng)環(huán)境110中包括聚合引擎112時(shí),可以從服務(wù)器130間歇地接 收到更新的門戶配置文件125,這產(chǎn)生間歇更新的聚合頁面126。
如這里使用的,門戶引擎114和134 二者均可包括定義特定聚合框架的 一個(gè)或多個(gè)門戶應(yīng)用??梢詾榭梢允琴Y源有限的環(huán)境的環(huán)境114定制引擎114 的門戶應(yīng)用和框架。引擎114可以具有以最小處理能力運(yùn)行的相對小的占用 區(qū)(footprint)。相反,引擎134可以具有比其功能相當(dāng)?shù)囊?14更健壯 (robust)的性能??梢砸栽试S功能性的無縫降級(jí)的方式為引擎114和134二 者寫代碼。也就是說,即使portlet代碼可能利用由引擎134提供的、引擎114 不支持的健壯特性,該portlet代碼也仍可以在環(huán)境110中執(zhí)行,雖然具有潛 在地減少的特性。
portlet引擎114和134均可以遵循相似的標(biāo)準(zhǔn)。例如,引擎114和134 二者均可以基于JAVA規(guī)范請求(JSR 168 )。系統(tǒng)100不限于任何特定門戶、 portlet容器標(biāo)準(zhǔn),而是可以適用于任何規(guī)范。例如,引擎114和134可以基 于基于遠(yuǎn)程portlet Web服務(wù)規(guī)范(WSRP)的技術(shù)、基于.NET平臺(tái)的技術(shù)、 基于SHAREPOINT (共享點(diǎn))的技術(shù)、基于ASP的門戶技術(shù)、基于PHP的 門戶技術(shù)等。
此外,與引擎114和134所基于的標(biāo)準(zhǔn)和/或技術(shù)無關(guān)地,引擎114均可 以與門戶服務(wù)器134的多種不同的實(shí)現(xiàn)兼容。例如,引擎114可以與引擎134 兼容,而不管門戶服務(wù)器是不是WEBSHPERE APPLICATION SERVER (WEBSHPERE應(yīng)用月l務(wù)器)或WEBSPHERE PORTAL (WEBSHPERE門 戶),其二者均是紐約阿蒙克的國際商用機(jī)器公司(IBM)的特定門戶服務(wù)器。 WEBSHPERE門戶可以以WEBSHPERE APPLICATION SERVER未實(shí)現(xiàn)的附 加特性(例如^笨查(probe) portlet月良務(wù)事件)、以及例如屬性代理(property broker)事件、portlet服務(wù)事件的其它性能、以及其它性能,來擴(kuò)展JSR168 性能。基于相同的JSR 168的引擎114還可以與諸如BEA WEBLOGIC PORTAL、 LIFERAY、 JBOSS、 PLUTO、 GRIDSPHERE、 UPORTAL等的門 戶服務(wù)器130實(shí)現(xiàn)相兼容。
圖2是根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的、與工作在僅客戶端的環(huán)境中的門戶解決方案結(jié)合使用的開發(fā)工具解決方案的示意圖。在一個(gè)實(shí)施例
中,如由界面200所示,可以使用圖形軟件開發(fā)工具200來生成包括用于客 戶端portlet容器的標(biāo)簽的聚合頁面。工具200可以是集成開發(fā)環(huán)境(IDE) 的一部分,例如,IBM的RATIONAL APPLICATION DEVELOPER ( RAD )工具。
如所示出的,工具200可以具有畫布(canvas) 210,在其上,-沒計(jì)者可 以拖動(dòng)GUI控制232和不同的portlet 230。 portlet工具欄230可以包括:沒計(jì) 者可選擇的選項(xiàng),其指示將由portal.jsp引用哪種類型的portlet容器(客戶端 一側(cè)的portlet容器和/或服務(wù)器一側(cè)的portlet容器)。經(jīng)由工具200,顯示為 類型I-V的不同類型的portlet可用。設(shè)計(jì)者可以將不同的portlet拖動(dòng)到畫布 210,并且可以圖形化地操:控它們的布局。如所示出的,畫布210可以包括正 在開發(fā)的入口中的三個(gè)不同類型的portlet 220-224。 一旦定義了 portlet容器 220-224, {更可以4吏用工具200來調(diào)整容器特性。例如,用戶可以為每個(gè)portlet 容器指定portlet內(nèi)容源。不同可用的視圖212可以呈現(xiàn)設(shè)計(jì)布局,源或代碼 布局、和/或預(yù)覽布局。
在由界面240顯示的另一實(shí)施例中,開發(fā)者使用的翻譯器可以從門戶配 置文件自動(dòng)生成聚合頁面。界面240可以允許開發(fā)者選擇(242)配置文件。 界面240可以可選地允許用戶選擇要在聚合頁面中包括什么類型(244)的 portlet標(biāo)簽。最后,可以包括可選的按鈕246,其基于所選擇的(242)配置 文件生成聚合頁面。
上面提供的工具解決方案兩者均為開發(fā)者提供創(chuàng)建可以被傳遞至客戶端 的、例如頁面120的預(yù)編譯的聚合頁面的手段??蛻舳丝梢允窃陂_發(fā)環(huán)境中 使用的客戶端、或在運(yùn)行時(shí)環(huán)境中使用的客戶端。例如,工作于portlet的開 發(fā)者可以使用客戶端一側(cè)的portlet容器來在本地開發(fā)其portlet組件。 一旦完 成了初始工作,開發(fā)者便可以利用服務(wù)器一側(cè)的portlet容器來測試portlet在 在線模式下將如何工作。在一個(gè)實(shí)施例中,軟件開發(fā)工具可以模仿或模擬運(yùn) 行時(shí)環(huán)境的在線和離線狀態(tài)。應(yīng)當(dāng)理解,僅為了說明性的目的,已經(jīng)提供了 GUI200和240的布置、布局和控制組件,而這里想到了衍生和改變,并且, 其被視為在本發(fā)明的范圍內(nèi)。
圖3是圖示根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的、用于創(chuàng)建可以在客 戶端環(huán)境中使用的聚合頁面的不同解決方案300和330的流程圖。解決方案300和/或330可以在系統(tǒng)100的環(huán)境下才喿作。
解決方案300圖示了工具解決方案,其接受空白JSP文件和一組portlet 作為輸入。其產(chǎn)生包含一系列標(biāo)簽的聚合的JSP的輸出,每個(gè)標(biāo)簽表示portlet 應(yīng)用。解決方案300可以以被添加了框架內(nèi)容310的空白門戶JSP305開始。 可以使用例如界面200的工具解決方案來添加此內(nèi)容。也就是說,可以使用 工具解決方案320 (其將portlet添加至JSP )來執(zhí)行添加portlet的調(diào)色板動(dòng) 作(palette action) 315??梢灶A(yù)編譯創(chuàng)建的JSP 325,并且將其展開至呈現(xiàn)所 包括的內(nèi)容的客戶端portlet容器(例如,容器115)。
解決方案330可以表示由聚合引擎112和/或開發(fā)翻譯工具執(zhí)行的動(dòng)作, 例如由界面240所示的。解決方案330接受門戶配置文件、 一組portlet以及 可選的空白JSP文件作為輸入。當(dāng)未輸入空白JSP文件時(shí),可以自動(dòng)生成一 個(gè)空白JSP文件。解決方案330可以輸出包含一系列標(biāo)簽的聚合的JSP,每 個(gè)標(biāo)簽表示portlet應(yīng)用。例如,可以將每個(gè)配置文件條目與JSP的標(biāo)簽條目 相關(guān)聯(lián)。在一個(gè)實(shí)施例中,可以以表^^形式布置標(biāo)簽。如所示出的,可以將 portlet配置文件340傳遞至翻^^奪引擎345,其為JSP生成器350產(chǎn)生結(jié)果。JSP 生成器350可以創(chuàng)建被預(yù)編譯并展開到呈現(xiàn)所包括的內(nèi)容的客戶端portlet容 器(例如,容器115)的聚合頁面355。
圖4是根據(jù)這里公開的創(chuàng)造性布置的實(shí)施例的、其中服務(wù)代理可以配置 允許在僅客戶端的環(huán)境中呈現(xiàn)門戶的系統(tǒng)的方法400的流程圖??梢栽谙到y(tǒng) 100的環(huán)境下執(zhí)行方法400。
當(dāng)客戶發(fā)起服務(wù)請求時(shí),方法400可以在步驟405中開始。在步驟410 中,可以選擇人類代理(human agent)來響應(yīng)于服務(wù)請求。在步驟415中, 人類代理可以分析客戶的當(dāng)前系統(tǒng),并且可以開發(fā)解決方案。在步驟420中, 人類代理可以配置客戶端系統(tǒng)、或軟件開發(fā)工具,以在客戶端環(huán)境中使用預(yù) 編譯的門戶。在步驟425中,人類代理可以完成月良務(wù)行為。
可以以硬件、軟件、或硬件和軟件的結(jié)合來實(shí)現(xiàn)本發(fā)明??梢栽谝粋€(gè)計(jì) 算機(jī)系統(tǒng)中以集中的方式實(shí)現(xiàn)本發(fā)明,或者可以以分布式的方式(在其中, 不同的單元散布在幾個(gè)互相連接的計(jì)算機(jī)系統(tǒng)中)實(shí)現(xiàn)本發(fā)明。適用于執(zhí)行 這里描述的方法的、任何種類的計(jì)算機(jī)系統(tǒng)或其它裝置是合適的。硬件和軟 件的典型結(jié)合可以是使用計(jì)算機(jī)程序的通用計(jì)算機(jī)系統(tǒng),當(dāng)加載并執(zhí)行所述 計(jì)算機(jī)程序時(shí),所述計(jì)算機(jī)程序控制計(jì)算機(jī)系統(tǒng),以便其執(zhí)行這里描述的方
ii法。
還可以在計(jì)算機(jī)程序產(chǎn)品中嵌入本發(fā)明,所述計(jì)算機(jī)程序產(chǎn)品包括4吏得 能夠?qū)嵤┻@里描述的方法的所有特征,并且當(dāng)在計(jì)算機(jī)系統(tǒng)中加載所述計(jì)算 機(jī)程序產(chǎn)品時(shí),所述計(jì)算機(jī)程序產(chǎn)品能夠執(zhí)行這些方法。當(dāng)前情境中的計(jì)算 機(jī)程序意味著以指令集的任何語言、代碼或符號(hào)的任何表達(dá),所述指令意在 使具有信息處理能力的系統(tǒng)直接地、或在下列任一或兩者之后執(zhí)行特定功能
a)轉(zhuǎn)換為另一語言、代碼或符號(hào);b)以不同的物質(zhì)形式再生。
可以在不背離本發(fā)明的精神或本質(zhì)特征的情況下,以其它形式實(shí)施本發(fā)
明。因此,應(yīng)當(dāng)參考所附權(quán)利要求而非前述說明,來指示本發(fā)明的范圍。
特別地,參考所附權(quán)利要求,可以將來自從屬權(quán)利要求的特征與獨(dú)立權(quán)
利要求的特征相結(jié)合,并且,可以以任何適當(dāng)?shù)姆绞?、并不僅僅在權(quán)利要求
中列舉的特定結(jié)合中,將來自各個(gè)獨(dú)立權(quán)利要求的特征相結(jié)合。
為了避免疑問,遍布說明和權(quán)利要求的這里使用的術(shù)語"包括"不被解
釋為含意"僅包括"。
權(quán)利要求
1.一種用于聚合并利用portlet的方法,包括識(shí)別在客戶端環(huán)境內(nèi)的聚合網(wǎng)頁,所述聚合網(wǎng)頁指定門戶;在聚合網(wǎng)頁中建立至多個(gè)portlet的控制鏈接,每個(gè)所述控制鏈接與客戶端portlet容器相關(guān)聯(lián);將來自portlet頁面的portlet內(nèi)容插入到每個(gè)客戶端portlet容器中;以及在該客戶端環(huán)境的瀏覽器界面中呈現(xiàn)該聚合網(wǎng)頁。
2. 如權(quán)利要求l所述的方法,其中,在該客戶端環(huán)境外部的計(jì)算設(shè)備中 預(yù)編譯該聚合網(wǎng)頁,所述方法還包括將該聚合網(wǎng)頁從該外部計(jì)算設(shè)備傳遞至該客戶端環(huán)境。
3. 如權(quán)利要求1或2所述的方法,還包括 將門戶配置文件傳遞至該客戶端環(huán)境;以及該客戶端環(huán)境中的聚合引擎將該門戶配置文件變換為該聚合網(wǎng)頁。
4. 如任一在前權(quán)利要求所述的方法,其中,軟件開發(fā)工具將門戶配置文 件自動(dòng)變換為該聚合網(wǎng)頁,之后,該聚合網(wǎng)頁被傳遞至該客戶端環(huán)境。
5. 如任一在前權(quán)利要求所述的方法,還包括軟件開發(fā)工具響應(yīng)于開發(fā)者發(fā)起的調(diào)色板動(dòng)作,將portlet添加至空白的 聚合網(wǎng)頁;使用該軟件開發(fā)工具而預(yù)編譯該聚合網(wǎng)頁;以及 將該聚合網(wǎng)頁傳遞至該客戶端環(huán)境。
6. 如任一在前權(quán)利要求所述的方法,其中,當(dāng)該客戶端環(huán)境處于離線狀 態(tài)中時(shí),發(fā)生該呈現(xiàn)步驟。
7. 如任一在前權(quán)利要求所述的方法,還包括r將該客戶端環(huán)境從離線狀態(tài)轉(zhuǎn)換至在線狀態(tài),其中,當(dāng)處于該在線狀態(tài) 中時(shí),從位于遠(yuǎn)離該客戶端環(huán)境的至少一個(gè)網(wǎng)絡(luò)服務(wù)器獲得該portlet內(nèi)容。
8. 如任一在前權(quán)利要求所述的方法,還包括當(dāng)處于該在線狀態(tài)中時(shí),從門戶服務(wù)器獲得對應(yīng)于該聚合網(wǎng)頁的第二聚 合網(wǎng)頁,其中,在該門戶服務(wù)器內(nèi)自動(dòng)編譯所述第二聚合網(wǎng)頁;以及 在該瀏覽器界面中呈現(xiàn)該第二聚合網(wǎng)頁。
9. 如任一在前權(quán)利要求所述的方法,其中,該聚合網(wǎng)頁是JAVA服務(wù)器頁面(JSP)。
10. 如任一在前權(quán)利要求所述的方法,其中,該客戶端portlet容器以基 于JAVA^見范請求(JSR) 168的標(biāo)準(zhǔn)來進(jìn)行編i奪。
11. 如任一在前權(quán)利要求所述的方法,其中,由至少一個(gè)機(jī)器根據(jù)至少 一個(gè)計(jì)算機(jī)程序來執(zhí)行該方法的所述步驟,其中,所述至少一個(gè)計(jì)算機(jī)程序具有可由所述至少一個(gè)機(jī)器執(zhí)行的多個(gè)代碼段。
12. 如權(quán)利要求1至10中的任一個(gè)所述的方法,其中,由服務(wù)代理以及 該服務(wù)代理所操控的計(jì)算設(shè)備中的至少一個(gè)來執(zhí)行該方法的所述步驟,其中, 響應(yīng)于服務(wù)請求而執(zhí)行所述步驟。
13. —種portlet處理方法,包括 生成預(yù)編i奪的portlet聚合頁面;將該預(yù)編-澤的portlet聚合頁面?zhèn)鬟f至客戶端;以及該客戶端呈現(xiàn)該portlet聚合頁面的內(nèi)容,而不依賴于服務(wù)器資源。
14. 如權(quán)利要求13所述的方法,其中,當(dāng)該客戶端處于離線狀態(tài)中時(shí), 發(fā)生該呈現(xiàn)步驟。
15. 如權(quán)利要求13或14所述的方法,其中,由軟件開發(fā)工具來執(zhí)行生 成步驟。
16. 如權(quán)利要求13、 14或15所述的方法,其中,生成步驟從門戶配置 文件自動(dòng)生成該portlet聚合頁面。
17. 如權(quán)利要求13至16中的任一個(gè)所述的方法,其中,該portlet聚合 頁面包括引用客戶端一側(cè)的portlet容器的標(biāo)簽,該客戶端使用所述客戶端一 側(cè)的portlet容器來呈現(xiàn)portlet內(nèi)容。
18. 如權(quán)利要求13至17中的任一個(gè)所述的方法,其中,該portlet聚合 頁面是JAVA服務(wù)器頁面(JSP)。
19. 如權(quán)利要求13至18中的任一個(gè)所述的方法,其中,該portlet聚合 頁面遵循基于JAVA規(guī)范請求(JSR) 168的標(biāo)準(zhǔn)。
20. 如權(quán)利要求13至19中的任一個(gè)所述的方法,其中,由至少一個(gè)機(jī) 器根據(jù)至少一個(gè)計(jì)算機(jī)程序來執(zhí)行該方法的所述步驟,其中,所述至少一個(gè) 計(jì)算機(jī)程序具有可由所述至少一個(gè)機(jī)器執(zhí)行的多個(gè)代碼段。
21. —種包括計(jì)算機(jī)程序代碼的計(jì)算機(jī)程序單元,當(dāng)所述計(jì)算機(jī)程序代 碼被載入計(jì)算機(jī)系統(tǒng)中并在其上被執(zhí)行時(shí),其使該計(jì)算機(jī)執(zhí)行如任一在前權(quán)利要求中所述的方法的步驟。
22. —種用于發(fā)送門戶的系統(tǒng),該系統(tǒng)包括用于接收聚合網(wǎng)頁的門戶引擎。
全文摘要
本發(fā)明公開了一種客戶端portlet容器,其允許門戶被用于僅客戶端的環(huán)境中。也就是說,本發(fā)明提供了一種解決方案,其將一組portlet聚合到客戶端可視的門戶頁面中,而不依賴于例如應(yīng)用服務(wù)器或門戶服務(wù)器的資源的服務(wù)器資源。客戶端可在網(wǎng)絡(luò)連接的狀態(tài)或斷開的狀態(tài)下使用該解決方案。本發(fā)明可以使用客戶端portlet容器來呈現(xiàn)portlet內(nèi)容,其中,所述客戶端portlet容器被例如JAVA服務(wù)器頁面(JSP)文件的聚合網(wǎng)頁的標(biāo)簽引用。
文檔編號(hào)H04L29/08GK101558629SQ200780044334
公開日2009年10月14日 申請日期2007年11月16日 優(yōu)先權(quán)日2006年11月28日
發(fā)明者拉赫爾·庫雷恩, 阿米特·阿格拉 申請人:國際商業(yè)機(jī)器公司