欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Jetspeed2學(xué)習筆記(三)
12、Portlet對動(dòng)作的處理過(guò)程
在一個(gè)標準的Web應用程序中,一個(gè)HTML表單提交將導致執行一些業(yè)務(wù)邏輯。業(yè)務(wù)處理的結果,要么作為屬性而被設置在請求或會(huì )話(huà)中并轉發(fā),要么包含到下一個(gè)JSP。
在一個(gè)JSR 168 portlet中,一個(gè)HTML表單的動(dòng)作URL應該是什么樣呢?JSR 168定義了一個(gè)JSP標簽庫,稱(chēng)為portlet taglib。HTML表單的動(dòng)作URL可以使用actionURL portlet標簽生成。例如(請參考favoriteColorEdit.jsp文件):
<form action="<portlet:actionURL/>" method="post">
...
</form>
提交該HTML表單將會(huì )導致調用portlet的processAction(ActionRequest aRequest, ActionResponse aResponse)方法。像通常一樣,可以通過(guò)調用request對象的getParameter()方法來(lái)獲得表單參數。注意:通過(guò)提交表單調用動(dòng) 作,但portlet中卻沒(méi)有processAction()方法,將會(huì )導致javax.portlet.PortletException。
processAction()方法設置response對象中的值。不要使用ActionRequest或ActionResponse對象的 setAttribute()方法。值不會(huì )從processAction()傳遞到render()方法,而且在JSP中是不可用的。相反要使用 ActionResponse對象的setRenderParameter()方法。這些render參數將對所有后續render請求可用,這一點(diǎn)與典型的Web應用程序請求屬性很不相同。典型的Web application請求屬性只對于一個(gè)請求可用。另一方面,render請求參數對于許多后續render請求可用。render參數保持可用直到值 被動(dòng)作的重新執行顯式地修改或刪除。
考慮portlet FavoriteColor。它在VIEW模式顯示了一個(gè)用戶(hù)偏好的顏色,但是可以在EDIT模式下更改。在EDIT模式下提交偏好的顏色選擇將調用 processAction()方法。該方法獲得偏好的顏色請求參數,并將其設置為render參數。這樣,偏好的的顏色render參數將在所有后續 render請求中都可用。
所呈現的參數是怎樣顯示在JSP上的呢?應使用來(lái)自portlet標簽庫的defineObjects標簽來(lái)定義portlet對象。該標簽使renderRequest、renderResponse和portletConfig portlet對象在頁(yè)面中可用。參數通過(guò)調用renderRequest對象的getParameter()方法來(lái)顯示。請參考與所包含的源代碼示例中的favoriteColorView.jsp。
portlet FavoriteColor也展示了其他概念。第一個(gè)是如何在processAction()方法中用編程的方法改變portlet模式。調用 ActionResponse對象的setPortletMode()方法來(lái)修改portlet模式。第二個(gè)概念是如何使用一個(gè)HTML鏈接來(lái)修改 portlet模式。該鏈接使用來(lái)自portlet標簽庫的renderURL標簽生成。根據希望的portlet模式指定portletMode屬性的 值。請參考源代碼示例中的FavoriteColorPortlet類(lèi)和favoriteColorView.jsp頁(yè)面。
13、portlet中對預先配置參數的讀取
在portlet的開(kāi)發(fā)中,可以在portlet.xml文件中預先配置相關(guān)的參數,然后在代碼中通過(guò)PortletConfig來(lái)進(jìn)行讀取,具體示例如下:
a、 在portlet.xml文件中添加如下配置片斷,添加一個(gè)參數:
portlet.xml:
<init-param>
<name>jspView</name>
<value>/jsp/view.jsp</value>
</init-param>
b、 在portlet程序中如下讀取其配置:
SimplePortlet.java:
String jspName = this.getPortletConfig().getInitParameter("jspView");
14、 Portlet標簽庫
a、 定義對象(defineObjects)標簽:
如果打開(kāi)其中的一個(gè)JSP文件,你會(huì )發(fā)現,和Servlet一樣,JSP中可以使用Portlet的一些variables.例如:
renderResponse
renderRequest
portletConfig--------可以用此變量獲得portlet.xml文件中的配置信息
但是必須聲名:
<portlet:defineObjects/>其中不可以定義任何屬性或者包含任何內容.
b、 動(dòng)作URL(actionURL )標簽:
屬性                     值類(lèi)型                     對應值
windowState               String                     minimized, normal, maximized
portletMode               String                      view, edit, help
var                       String                     任何值
secure                    String                      true,false
<portlet:actionURL windowState=”normal” portletMode=”edit”>
<portlet:param name=”action” value=”login”/>
</portlet:actionURL>
以上創(chuàng )建一個(gè)action URL , 當訪(fǎng)問(wèn)它時(shí)將使portlet window變?yōu)閚ormal 裝態(tài), 模式變?yōu)?nbsp;edit。
可以通過(guò)如下代碼在processAction中判斷當前操作模式:
public void processAction(ActionRequest request, ActionResponse response)
throws PortletException, IOException {
if (request.getPortletMode() == PortletMode.VIEW) {   //瀏覽頁(yè)
…..
}else if(request.getPortletMode() == PortletMode.EDIT){ //編輯狀態(tài)
…..
}else if(request.getPortletMode() == PortletMode.HELP){ //幫助狀態(tài)
…..
}
c、 renderURL 標簽:
屬性                        值類(lèi)型                 對應值
windowState                  String                 minimized,normal,maximized
portletMode                  String                  view, edit, help
var                         String                  任何值
secure                       String                  true,false
<portlet:renderURL portletMode=”view” windowState=”maximized”>
<portlet:param name=”number” value=”1”/>
<portlet:param name=”page” value=”2”/>
</portlet:renderURL>
創(chuàng )建一個(gè)render URL , 當訪(fǎng)問(wèn)它時(shí)將使portlet window變?yōu)閙aximized裝態(tài), 模式變?yōu)?nbsp;view.
d、 namespace Tag
為目前的Portlet產(chǎn)生一個(gè)唯一的Value. 防止和其他的Portlet 或者Portal頁(yè)面上的value產(chǎn)生沖突.
<A HREF=”javascript: <portlet:namespace/>doFoo()”>Foo</A>
e、 param Tag:這個(gè) tag 是定義一個(gè)參數值, 可能是放在 actionURL 或 renderURL 之中. param Tag 不準包含任何 Body Content.
屬性     值類(lèi)型
name     String
<portlet:param name=”myParam” value=”someValue”/>
注: param Tag不可以有body content.
15、portlet緩存
控制portlet是否被緩存,及緩存的時(shí)間可以在portlet.xml文件中用如下標簽:
<expiration-cache>0</expiration-cache>
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
深入理解Weblogic Portal8.1
Portal Framework介紹 - 神話(huà)大牛
Portlet API
Liferay系列文章(四)Portal產(chǎn)品介紹--開(kāi)放源碼Portal產(chǎn)品
有話(huà)好好說(shuō): 幾種開(kāi)源Portal的簡(jiǎn)單介紹分析
Jetspeed JetExpress Tutorial Portal 筆記2 -- 定制...
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久