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

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

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

    常言笑的家

    Spring, Hibernate, Struts, Ajax, RoR

    什么是Portal?

    什么是Portal?
    Portal是一個(gè)基于web的應(yīng)用程序,它主要提供個(gè)性化、單點(diǎn)登錄、不同來(lái)源的內(nèi)容整合以及存放信息系統(tǒng)的表示層。

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

    Portlet的輸出是一個(gè)片段,即不是一個(gè)完整的頁(yè)面。

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

    Portlets與Servlet的異同?
    相同點(diǎn)
    基于web應(yīng)用的java技術(shù)

    由特定的容器管理

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

    生命周期由容器進(jìn)行管理

    通過(guò)request/reponse進(jìn)行交互

    不同點(diǎn)
    portlet只生成片段

    portlet并不直接綁定到某一個(gè)URL上

    portlet通過(guò)portal進(jìn)行交互
    portlet可以多次在同一個(gè)portal頁(yè)面上同時(shí)出現(xiàn)

    portlet優(yōu)點(diǎn)
    能訪問(wèn)到用戶配置信息

    能在不同的域中存儲(chǔ)會(huì)話:應(yīng)用程序級(jí)到私有級(jí)。

    portlet與servlet的關(guān)系
    前者能調(diào)用后者,并且能共享信息,包括:Attributes

    portlet容器是servlet容器的擴(kuò)展

    portlet無(wú)法做到的事情
    設(shè)置response的字符集編碼

    設(shè)置http header

    獲取客戶端的request

    Portlets實(shí)例
    如果是在普通的場(chǎng)合下使用,即不是在分布式場(chǎng)合,則每個(gè)portal應(yīng)用就會(huì)生成一個(gè)portlet實(shí)例。而如果是在分布式場(chǎng)合下使用的話,則每個(gè)jvm只有一個(gè)實(shí)例。

    Portlet生命周期
    Portlet接口的四個(gè)方法構(gòu)成一個(gè)完整的生命周期:init, processAction,render,destroy
    public void init(PortletConfig config) throws PortletException;

    由portlet容器調(diào)用,在將portlet放入服務(wù)區(qū)前調(diào)用。portlet容器在初始化portlet后,直接調(diào)用這個(gè)方法。

    public void processAction (ActionRequest request, ActionResponse response)

      throws PortletException, java.io.IOException;

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

    public void render (RenderRequest request, RenderResponse response)

      throws PortletException, java.io.IOException;

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

    public void destroy();

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

    Portlet URLs
    如何生成Portlet URL
    RenderResponse.createActionURL

    RenderResponse.createRenderURL

    調(diào)用setParameter、setParameters可以用來(lái)設(shè)置參數(shù).
    如何使用Portlet URL
    開(kāi)發(fā)者不可以對(duì)參數(shù)進(jìn)行任何編碼,它(編碼)是由portlet容器進(jìn)行的。見(jiàn)下面例子:

        PortletURL url = response.createRenderURL();

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

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

        writer.print(“Summary”);

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

        PortletURL url = response.createActionURL();

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

        url.setWindowState(WindowState.MAXIMIZED);

        writer.print(“ ”);

    setSecure方法用來(lái)設(shè)置是否是https

    posted on 2007-08-22 09:56 常言笑 閱讀(245) 評(píng)論(0)  編輯  收藏 所屬分類: 技術(shù)總結(jié)

    My Links

    Blog Stats

    常用鏈接

    留言簿(5)

    隨筆分類

    隨筆檔案

    搜索

    積分與排名

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲一区二区高清| 99久久这里只精品国产免费| 国产精品久免费的黄网站| 亚洲图片激情小说| 日本片免费观看一区二区| 亚洲精品**中文毛片| 一级毛片在线观看免费| 亚洲自偷精品视频自拍| 蜜臀98精品国产免费观看| 亚洲伊人久久大香线蕉| 妞干网免费视频在线观看| 国产精品日本亚洲777| 成人亚洲综合天堂| 极品色天使在线婷婷天堂亚洲| 精品久久洲久久久久护士免费| 美国毛片亚洲社区在线观看| 亚洲欧洲一区二区三区| 99视频免费在线观看| 亚洲色图综合网站| 女人被免费视频网站| 阿v免费在线观看| 国产亚洲免费的视频看| 中文字幕在线免费观看| 亚洲另类无码专区首页| 亚洲欧洲国产成人综合在线观看| 你懂的免费在线观看| 亚洲欧洲日产v特级毛片| 在线中文高清资源免费观看| 人人鲁免费播放视频人人香蕉| 国产成人亚洲综合色影视| 一二三四免费观看在线视频中文版 | 在线毛片片免费观看| 四虎成人免费影院网址| 丁香六月婷婷精品免费观看| 日韩成人在线免费视频| A毛片毛片看免费| 亚洲免费福利在线视频| 国产亚洲精久久久久久无码77777 国产亚洲精品成人AA片新蒲金 | 成人免费无码大片a毛片软件| 一个人免费观看视频在线中文| 91大神亚洲影视在线|