kapok

          垃圾桶,嘿嘿,我藏的這么深你們還能找到啊,真牛!

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            455 隨筆 :: 0 文章 :: 76 評論 :: 0 Trackbacks
          什么是Portal?
          Portal是一個基于web的應用程序,它主要提供個性化、單點登錄、不同來源的內(nèi)容整合以及存放信息系統(tǒng)的表示層。

          什么是Portlet?
          Portlet是基于java技術的web組件,它由portlet容器管理、并處理請求,并動態(tài)生成輸出內(nèi)容。

          Portlet的輸出是一個片段,即不是一個完整的頁面。

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

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

          由特定的容器管理

          動態(tài)生成內(nèi)容

          生命周期由容器進行管理

          通過request/reponse進行交互

          不同點
          portlet只生成片段

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

          portlet通過portal進行交互

          portlet可以多次在同一個portal頁面上同時出現(xiàn)

          portlet優(yōu)點
          能訪問到用戶配置信息

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

          portlet與servlet的關系
          前者能調(diào)用后者,并且能共享信息,包括: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容器調(diào)用,在將portlet放入服務區(qū)前調(diào)用。portlet容器在初始化portlet后,直接調(diào)用這個方法。

          public void processAction (ActionRequest request, ActionResponse response)

              throws PortletException, java.io.IOException;

          由portlet容器調(diào)用,用來處理action request。

          public void render (RenderRequest request, RenderResponse response)

              throws PortletException, java.io.IOException;

          由portlet容器調(diào)用,用來生成輸出。

          public void destroy();

          將portlet從服務區(qū)中刪除。

          Portlet URLs
          如何生成Portlet URL
          RenderResponse.createActionURL

          RenderResponse.createRenderURL

          調(diào)用setParameter、setParameters可以用來設置參數(shù).

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

                 PortletURL url = response.createRenderURL();

                 url.setParameter(“customer”,”foo.com”);

                 url.setParameter(“show”,”summary”);

                 writer.print(“Summary”);

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

                 PortletURL url = response.createActionURL();

                 url.setParameter(“paymentMethod”,”creditCardInProfile”);

                 url.setWindowState(WindowState.MAXIMIZED);

                 writer.print(“ ”);

          setSecure方法用來設置是否是https。
          posted on 2005-03-22 16:13 笨笨 閱讀(632) 評論(0)  編輯  收藏 所屬分類: ALLWeblogic Portal
          主站蜘蛛池模板: 滦南县| 土默特右旗| 壤塘县| 定远县| 肇东市| 宿州市| 阜南县| 石棉县| 台中市| 金溪县| 海口市| 丰镇市| 武功县| 南阳市| 雅安市| 清水县| 尉犁县| 陇川县| 宁城县| 武邑县| 图木舒克市| 开江县| 千阳县| 平乐县| 通河县| 台中县| 修文县| 绍兴县| 保亭| 怀远县| 六盘水市| 宣城市| 岑溪市| 巴楚县| 廊坊市| 靖宇县| 台山市| 色达县| 民勤县| 林芝县| 克拉玛依市|