Portlet的生命周期擴(kuò)展了Servlet的生命周期,增加了更多的控制。就像Servlet的init和destroy的方法一樣,Portlet使用這些方法初始化和關(guān)閉conrete Portlet和Application Portlet。
Init():Portlet被構(gòu)造成為一個(gè)Portlet實(shí)例,在容器內(nèi)被所有用戶共享使用,如Servlet的共享使用一樣。這個(gè)方法傳遞PortletConfig實(shí)例作為參數(shù)。
initConcrete() :Portlet構(gòu)造完成后,Portlet被第一次調(diào)用之前,初始化PortletSettings。
service() :當(dāng)用戶請求Portlet時(shí),容器調(diào)用此方法為用戶提供服務(wù)。
destroyConcrete() :此方法用來結(jié)束concrete Portlet服務(wù),這種情況可能在Portal Server運(yùn)行中管理員刪除一個(gè)具體Portlet時(shí)發(fā)生。
destroy() :當(dāng)Portal Server終止運(yùn)行后,調(diào)用此方法表示Portlet的生命周期結(jié)束。
Portlet Action 方法:
Action處理所有的由Portlet觸發(fā)的事件。任何form或者超連接事件都會導(dǎo)致actionPerformed方法執(zhí)行。其他的事件,如窗口的最大最小化,或者其他portlet傳遞消息時(shí),也會觸發(fā)相應(yīng)的事件。ActionEvent,WindowEvent和MessageEvent將傳遞給相應(yīng)的action。
Portlet Render方法
Portlet容器將顯示頁面上所有的portlet,基于他們定義的模式。Portlet開發(fā)者可以繼承這些方法,提供PortletResponse輸出流或者使用PortletContext執(zhí)行include方法包含html文件或者jsp文件。在顯示portlet的時(shí)候,doTitle被布局引擎所調(diào)用。