像
Servlet
一樣,編寫的
Portlet
也必須直接或者間接的擴展基類
GenericPortlet
,這個是由
JCP
針對
Portal
提出的
JSR168
規范定義的。只要擴展自規范的
GenericPortlet
,所有的
Portlet
都可以在支持
JSR168
規范的
Portal
服務器上運行。
GenericPortlet
統一定義了可供
Portal
容器識別和調用的方法,包括:
public Init()
:初始化;
public Init(PortletConfig)
:初始化;
public getInitParameter(String)
:取得在
Portlet.xml
中定義的初始化參數;
public getInitParameterNames()
:取得在
Portlet.xml
中定義的全部初始化參數;
public getPortletConfig()
:取得包含初始化參數的配置對象
PortletConfig
實例;
public getPortletContext()
:取得
Portlet
上下文;
public getPortletName()
:取得在
Portlet.xml
中定義的
Portlet
名稱。
public getResourceBundle(Locale)
:取得
Portlet
國際化的
Resource Bundle
;
protected getTitle(RenderRequest)
:取得
Portlet
的標題;
protected doView(RenderRequest
,
RenderResponse)
:
Portlet
瀏覽模式的處理方法;
protected doEdit(RenderRequest
,
RenderResponse)
:
Portlet
編輯模式的處理方法;
protected doHelp(RenderRequest
,
RenderResponse)
:
Portlet
幫助模式的處理方法;
protected doDispatch(RenderRequest
,
RenderResponse)
:
Portlet
行為分發;
protected processAction(ActionRequest
,
ActionResponse)
:
Portlet
處理
Action Request
的方法;
protected render(RenderRequest
,
RenderResponse)
:
Portal
處理
Render Request
的方法;
public destroy()
:
Portlet
銷毀,終止其生命周期。
在
Portlet Portal
運行的時候,
doView
、
doEdit
、
doHelp
三個方法分別被調用,用以生成
Portlet
標記。同樣也可以調用
Servlet
生成
Portlet
標記,或者不調用
JSP
或者
Servlet
,直接在方法中得到
PrintWriter
然后用最簡單的
pw.println()
打印出內容。這個過程類似
Servlet
,如下:
PrintWriter pw = renderResponse.getWriter();
pw.println(“Hello
,
world!”);
與
Servlet
類似,可以使用
getInitParamter(String s)
得到配置文件中
Portlet
的初始值,只不過
Servlet
在
web.xml
中,而
Portlet
在
portlet.xml
中。
portlet.xml:
<init-param>
<name>jspView</name>
<value> /jsp/view.jsp</value>
</init-param>
針對如上portlet.xml中的初始化信息,可以采用如下的調用方式:
SimplePortlet.java
:
String jspName = getPortletConfig().getInitParameter("jspView");
posted on 2007-01-24 11:02
周銳 閱讀(1702)
評論(0) 編輯 收藏 所屬分類:
Portal