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

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

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

    Let's go inside

    this blog is deprecated as a result of laziness.
    posts - 59, comments - 2, trackbacks - 0, articles - 0

    什么是Portal

    Posted on 2006-09-12 19:03 Earth 閱讀(364) 評論(0)  編輯  收藏 所屬分類: JSR168

    什么是Portal?
    Portal是一個基于web的應用程序,它主要提供個性化、單點登錄、不同來源的內容整合以及存放信息系統的表示層。

    什么是Portlet?
    Portlet是基于java技術的web組件,它由portlet容器管理、并處理請求,并動態生成輸出內容。
    Portlet的輸出是一個片段,即不是一個完整的頁面。

    Portal標準
    為規范Portal,SUN于2003年底制定了JSR168,它定義了portlet標準,并給出了一個實現接口。

    Portlets與Servlet的異同?
    相同點
    基于web應用的java技術

    由特定的容器管理

    動態生成內容

    生命周期由容器進行管理

    通過request/reponse進行交互

    不同點
    portlet只生成片段

    portlet并不直接綁定到某一個URL上

    portlet通過portal進行交互

    portlet可以多次在同一個portal頁面上同時出現

    portlet優點
    能訪問到用戶配置信息

    能在不同的域中存儲會話:應用程序級到私有級。

    portlet與servlet的關系
    前者能調用后者,并且能共享信息,包括:Attributes

    portlet容器是servlet容器的擴展

    portlet無法做到的事情
    設置response的字符集編碼

    設置http header

    獲取客戶端的request

    Portlets實例
    如果是在普通的場合下使用,即不是在分布式場合,則每個portal應用就會生成一個portlet實例。而如果是在分布式場合下使用的話,則每個jvm只有一個實例。

    Portlet生命周期
    Portlet接口的四個方法構成一個完整的生命周期:init, processAction,render,destroy

    public void init(PortletConfig config) throws PortletException;

    由portlet容器調用,在將portlet放入服務區前調用。portlet容器在初始化portlet后,直接調用這個方法。

    public void processAction (ActionRequest request, ActionResponse response)
    throws PortletException, java.io.IOException;

    由portlet容器調用,用來處理action request。

    public void render (RenderRequest request, RenderResponse response)
    throws PortletException, java.io.IOException;

    由portlet容器調用,用來生成輸出。

    public void destroy();

    將portlet從服務區中刪除。

    Portlet URLs
    如何生成Portlet URL
    RenderResponse.createActionURL
    RenderResponse.createRenderURL

    調用setParameter、setParameters可以用來設置參數.

    如何使用Portlet URL
    開發者不可以對參數進行任何編碼,它(編碼)是由portlet容器進行的。見下面例子:

    PortletURL url = response.createRenderURL();
    url.setParameter(“customer”,”foo.com”);
    url.setParameter(“show”,”summary”);
    writer.print(“Summary”);

    portlet URL可以包含portlet的模式及窗口的狀態,見下面例子:

    PortletURL url = response.createActionURL();
    url.setParameter(“paymentMethod”,”creditCardInProfile”);
    url.setWindowState(WindowState.MAXIMIZED);
    writer.print(“ ”);

    setSecure方法用來設置是否是https。


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 欧洲精品免费一区二区三区| 亚洲一区免费观看| 成人免费视频一区二区三区| 亚洲视频免费在线播放| 免费专区丝袜脚调教视频| 亚洲成人网在线观看| 香蕉97超级碰碰碰免费公| 亚洲三级中文字幕| 免费观看成人毛片a片2008| 亚洲欧美日韩中文无线码| 日本免费一区尤物| 美女被艹免费视频| 国产亚洲精品线观看动态图| 国产日韩精品无码区免费专区国产| 国产精品亚洲不卡一区二区三区| 成全视成人免费观看在线看| 亚洲成AV人片在线观看无| 在免费jizzjizz在线播| 麻豆狠色伊人亚洲综合网站| 性做久久久久免费观看| 精品人妻系列无码人妻免费视频| 久久久久久久久亚洲| 一本岛高清v不卡免费一三区| 亚洲熟妇无码AV不卡在线播放| 又粗又硬又黄又爽的免费视频| 9i9精品国产免费久久| 久久亚洲AV无码精品色午夜麻豆| 久久精品a一国产成人免费网站| 午夜亚洲国产精品福利| 亚洲国产精品无码专区在线观看 | 无人在线观看免费高清| 亚洲国产精品yw在线观看| 国产成人无码区免费A∨视频网站| 一本久久免费视频| 亚洲人成片在线观看| 亚洲A∨精品一区二区三区| 免费视频一区二区| 亚洲啪AV永久无码精品放毛片| 国产亚洲精品激情都市| 啦啦啦高清视频在线观看免费| 一区二区在线视频免费观看|