Portlet介紹

Portlet定義

依據標準定義
  • Portal是一個網頁應用程式,一般都能提供個人化、單一簽入、內容匯整,從不同的來源、主機,以及資訊系統不同階層整合。
  • Portlet是網頁元件,如同 Servlet,是特別設計用在一個組合頁面上彙整內容。通常一個頁面會包含許多Portlets,每個Portlet是個一個區塊片段,配合頁面上Layout配置,組合出整個Portal頁面。
Portlet Specification標準有JSR-168(Portlet 1.0)、JSR-286(Portlet 2.0)。最新制定標準是JSR-362(Portlet 3.0),會符合的Portal有eXo Platform、IBM、Liferay、Oracle、Red Hat等。
典型Portlet的表現,如儀表板系統上頁面可做客製化的布局(Layout)設定,並拖拉指定的功能元件是容器(Container)位置上,同個頁面上Portlet彼此間能有互動或共享參數。
Portal, Portlet結構 Hierarchy
Portlet有數個顯示模式:正常(Normal)、最大(Maximum)、最小(Minimum)。在編輯控制時,Portlet提供拖拉方式進行即時Layout,並可進階編輯參數,與移除Portlet。
傳統Portlet包含View、Edit、Help幾個操作模式。

Portlet生命週期

在Portal頁面生成的週期中,每個Portlet在產生片段內容後,才產生頁面結果至使用者。
部分效果也會搭配Ajax,進行延遲載入。
Portlet循序圖 Sequence Diagram, Lifecycle
Portlet服務過程主要有2個 Phase:Action Phase、Render Phase(Portlet 1.0),用以服務GET、POST。
Portlet Phase Diagram