Portlet容器(portlet container)使用Portlet接口来调用portlets。每个portlet必须实现此接口,或者直接实现它,或者从Portlet接口的实现类继承。
Portlet是基于Java技术的Web组件。Portal使用portlets作为可插入的UI组件。
public void destroy()
Portlet容器调用destroy方法将portlet从服务(service)中移除。使用destroy方法可以释放资源或者写入持久化数据。如果destroy方法已经被调用,就不能再向该portlet发送请求。如果在destroy方法执行期间产生RuntimeException异常,destroy方法仍被认为成功完成。在destroy方法执行完成后,portlet对象会被垃圾回收器回收。
public void init(PortletConfig config) throws PortletException
Portlet容器调用init方法将portlet放入到服务(service)中。init方法仅在portlet处理第一次请求时会被调用。只有init方法成功执行,portlet才可以处理请求。对于portlet对象而言,init方法仅被调用一次,通常在该方法中加载重要的资源(如:数据库连接)。
参数为PortletConfig对象。可以从PortletConfig对象得到初始化参数(initialization parameters)、资源绑定(resource bundles)和PortletContext对象。
public void processAction(ActionRequest request, ActionResponse response)
throws PortletException, java.io.IOException
Portlet容器调用processAction方法来处理action请求。processAction方法根据action请求参数来更新portlet的状态。
第一个参数是ActionRequest对象。可以通过ActionRequest对象访问参数(parameters)、窗口状态(window state)、portlet模式(portlet mode)、portlet上下文(portlet context)、portlet会话(portlet session)和PortletPreferences对象。
public void render(RenderRequest request, RenderResponse response)
throws PortletException, java.io.IOException
render方法用于处理所有的render请求。在处理render请求期间,portlet根据当前的窗口状态显示内容。
第一个参数是RenderRequest对象。可以通过ActionRequest对象访问render参数(render parameters)、窗口状态(window state)、portlet模式(portlet mode)、portlet上下文(portlet context)、portlet会话(portlet session)和PortletPreferences对象。
第二个参数是RenderResponse对象,它用于显示内容。