现在的位置: 首页 > 综合 > 正文

[Portal参考手册]5.Portlet核心API

2013年12月15日 ⁄ 综合 ⁄ 共 3162字 ⁄ 字号 评论关闭

Portlet

        Portlet 类是一个Portlet 的代码表示,它从PortletAdapter 继承而来。

 

Portlet instance  (portlet实例)

    Portlet类实例是一个Portlet 类的实例,由PortletConfig 中提供的一系列参数参数化的结果,每一个Portlet类实例中都包括一个PortletConfig 对象,当管理员发布一个新的Portlet 应用程序(war 文件)或服务器重新启动时,都会创建一个新的Portlet 类实例,Portlet 类实例不是Portlet 的具体展现,因此对用户和管理员来说Portlet 类实例是不可见的。

 

Conrete Portlet (具体portlet)

    Portal管理员利用管理接口部署一个Portlet应用(WAR文件)或安装一个Portlet的备份。每个动作会创建一个具体Portlet,它是 由单一的PortletSettings对象参数化的,对每一个Portlet可能有多个具体Portlet。PortletSettings是是可读/ 写和持久化的对象,PortletSettings包含Portlet部署描述符中定义的初始化配置参数。

   具体Portlet允许一个Portlet实例以不同的参数配置运行,不需要创建格外的Portlet实例。在一个单一的Portlet的生命周期中,许 多具体Portlet可以被创建和销毁,没有对象明确的代表具体Portlet。同一个具体Portlet可以被许多用户共享。

 

Conrete Portlet instance (具体portlet实例)

当一个用户或管理员将具体Portlet置于用户页面上,就创建了一个具体Portlet实例,这个实例是由 一个单一的PortletData对象参数化的具体Portlet,一个具体Portlet可能具有多个具体Portlet实例,PortletData 为一个具体Portlet 类实例存储持久化信息;PortletData的范围依赖于具体Portlet所在页面的范围:如果一个管理员将一个具体Portlet置于组页面中,那 么PortletData对象包含为用户组存储的数据;如果一个具体的Portlet置于用户的页面中,PortletData对象包含为这个用户存储的 数据。

当一个用户访问包含具体Portlet的页面,这个具体Portlet创建一个基于该用户的具体 Portlet实例。当一个用户登录到Portal时,Portal服务器为每个用户的Portlet创建一个PortletSession。被 PortletSession参数化的一个具体Portlet实例将被看成是一个用户的Portlet实例。每一个具体Portlet实例可能有多个用户 Portlet实例。一个用户Portlet实例是一个PortletSession参数化的具体Portlet实例, PortletSession保存和单一用户Portlet实例的使用相关的临时信息。

 

PortletConfig

    portletConfig对象提供初始化时用的信息,包装了Javax.servlet.ServletConfig,仅仅在CONFIGURE模式是,才能访问配置数据。

getContext : PortletContext

返回 PortletContext 对象

getName : String

返回portlet的名称

getGroupName : String

返回group名称

supports(Portlet.Mode mode) : boolean

假如portlet支持提供的模式,返回真,否则返回假.

supports(PortletWindow.State state) : boolean

假如portlet支持提供的窗口状态,返回真,否则返回假.

 

PortletContext

portletContext定义了运行在其中的 portlet的视图。使用portletContext对象,portlet能记下事件日志,获得portlet程序的资源,以及设置储存其他 portlet和servlets能访问的属性。每个portlet都有一个portletContext的实例部署在容器中。通过 portletContext接口,就可以访问上下文初始参数,找回和存贮上下文属性,获得静态的资源和包含servlerts、jsp的请求分发器

getContainerInfo : String

返回Spirit portlet容器的信息

getPortletLog : PortletLog

返回一个logger

getMinorVersion : int

得到Spirit的次版本

getMajorVersion : int

得到Spirit的主版本

getService(Class service) : PortletService

返回一个portlet服务的实例

getText(String bundle, String key, Locale locale) : String

返回一个本地化的文本

include(String path, PortletRequest request, PortletResponse response)

Include一个资源,如JSP文件

 

PortletRequest

       PortletRequest 包装了javax.servlet.http.HttpServletRequest对象。封装了客户端请求的所有信息,参数,请求内容数据,portlet模式,窗口状态等。

getClient : Client

返回一个客户端,客户端可能是IE浏览器、PDA等

getData : PortletData

返回用户的持久化的数据。

getGroup : PortletGroup

返回Group。

setMode(Portlet.Mode mode)

设置portlet显示的模式。如Portlet.Mode.CONFIGURE, Portlet.Mode.VIEW

getMode : Portlet.Mode

返回portlet正在运行的模式,如 Portlet.Mode.CONFIGURE, Portlet.Mode.VIEW

getPreviousMode : Portlet.Mode

返回portlet前一个模式。Portlet.Mode.CONFIGURE, Portlet.Mode.VIEW 。 不存在的化返回Portlet.Mode.VIEW

getPortletSession : PortletSession

返回用户的portlet session

getPortletSettings :PortletSettings

返回portlet settings。

getRole : PortletRole

返回用户的角色。如 PortletRole.GUEST, PortletRole.USER, PortletRole.ADMIN, PortletRole.SUPER,

getUser : User

返回用户对象。

getWindow : PortletWindow

返回portlet window

 

PortletResponse

PortletResponse 包装了javax.servlet.http.HttpServletResponse,

createURI : PortletURI

返回portlet URI

createURI(PortletWindow.State state) : PortletURI

返回portlet URI

 

PortletSession

PortletSession包装了javax.servlet.http.HttpSession对象,未增加新的方法。

 

PortletSettings

   

 

PortletData

抱歉!评论已关闭.