JSR168規(guī)范詳解

JSR168規(guī)范詳解

ID:37710646

大小:44.00 KB

頁數(shù):4頁

時(shí)間:2019-05-29

JSR168規(guī)范詳解_第1頁
JSR168規(guī)范詳解_第2頁
JSR168規(guī)范詳解_第3頁
JSR168規(guī)范詳解_第4頁
資源描述:

《JSR168規(guī)范詳解》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、JSR168規(guī)范詳解關(guān)于Portlet的一些概念性的文字網(wǎng)絡(luò)上很多,谷歌或是百度一下可以很容易搜索到,下面我把自己覺得容易混淆和模糊的幾個(gè)知識(shí)點(diǎn)做下簡(jiǎn)單介紹:?1、PortletRequest&URL??????在一個(gè)Portal頁面中,通常都包含了多個(gè)Portlet,在一個(gè)時(shí)刻用戶只能與一個(gè)Portlet交互,當(dāng)用戶向一個(gè)Portlet發(fā)出請(qǐng)求(例如點(diǎn)擊了“submit”按鈕),整個(gè)Portlet頁面將會(huì)重新構(gòu)成。在這個(gè)過程中,是否有與用戶交互的Portlet處理方式顯然是不同的,而且用戶沒有與之交互的Portl

2、et顯然不應(yīng)該接收到用戶的請(qǐng)求參數(shù)。? ?因此JSR168規(guī)范中將對(duì)Portlet的請(qǐng)求分為Action和Render兩種。Portlet在收到Action請(qǐng)求,獲取用戶所提交的信息,進(jìn)行相應(yīng)的處理;受到Render請(qǐng)求后,則生成頁面代碼。當(dāng)用戶向一個(gè)Portlet發(fā)出請(qǐng)求,該請(qǐng)求被Portlet容器接受,Portlet容器再調(diào)用相應(yīng)Portlet的processAction()方法;等到processAction()方法執(zhí)行完畢后,Portlet容器再調(diào)用所有Portlet的render()方法,并將這些方法所返

3、回的內(nèi)容組合形成一個(gè)頁面返回給客戶端。在上述過程中,所有Portlet的render()方法的調(diào)用次序在規(guī)范中沒有規(guī)定,既可能是有順序的串行調(diào)用,也可能是多線程的同步調(diào)用,依賴于廠商的具體實(shí)現(xiàn)。???????為了接受用戶請(qǐng)求,一個(gè)Portlet需要有一個(gè)指向其自身的URL,例如用在HTTPFORM的ACTION字段。但是與Servlet不同的是,Portlet不是一個(gè)完整的頁面而只是頁面的一部分,一個(gè)Portlet可以出現(xiàn)在多個(gè)頁面中,所以Portlet無法綁定具體的URL。在JSR168規(guī)范中定義了Portlet

4、URL接口,通過該接口可以得到指向Portlet自身的URL,對(duì)應(yīng)兩種用戶請(qǐng)求有兩種產(chǎn)生URL的方法:q?4k2@*v_rk*l?一、forrender():?PortletURLurl=response.createRenderURL();www.portalfan.com&S???????A(`Lv(s?url.setParameter(“customer”,”foo.com”);?url.setParameter(“show”,”summary”);writer.print(“

5、.toString()+””>Summary”);?二、forprocessAction():?`kTi3O?PortletURLurl=response.createActionURL();?url.setParameter(“paymentMethod”,”creditCardInProfile”);?url.setWindowState(WindowState.MAXIMIZED);www.portalfan.com1x"pVfH?writer.print(“

6、”ACTION=””+url.toString()+””>”);?(r/aIiI(v/i?  上面的代碼我們可以看到,除了得到URL外,還可以在其中加入?yún)?shù)。另外由于Portal服務(wù)器廠商通常都會(huì)利用URL增加一些產(chǎn)品相關(guān)的參數(shù),因此強(qiáng)烈建議在Portlet中提交用戶請(qǐng)求采用POST方式。?2、PortletModes&WindowStates?在Portal應(yīng)用中,用戶通常需要設(shè)置、調(diào)整Portlet的顯示方式,對(duì)此JSR168同樣做出了規(guī)定。分別有PortletModes和WindowStates。?Por

7、tletModes說明Portlet目前所執(zhí)行的功能模式,規(guī)范要求Portal服務(wù)器必須支持以下三種模式:VIEW——內(nèi)容顯示,通常為缺省模式?EDIT——編輯相關(guān)的設(shè)置?HELP——顯示幫助信息?除此之外可以Portal服務(wù)器可以實(shí)現(xiàn)自定義的模式。portal愛好者0XLqXP5ivJ?每個(gè)Portlet在Portal頁面中就是一個(gè)“窗口”,類似于MSWindows、XWindo等窗口系統(tǒng)Portlet也有自己的窗口狀態(tài)(WindowStates),規(guī)范要求Portal服務(wù)器必須支持以下三種窗口狀態(tài):?NORM

8、AL——普通portlet窗口,在這個(gè)狀態(tài)下通常是與其它Portlet共享Portal頁面;portal愛好者t8u/O/F;F?MAXIMIZED——最大化portlet窗口,獨(dú)占Portal頁面;?J&?'X$az9u_eJ?MINMIZED——最小化portlet窗口#la

9、M@!YP?2Ng?除此之外可以Portal服務(wù)器可以實(shí)現(xiàn)自定義的窗口狀態(tài)  

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。