http://www.blogjava.net/rain1102/articles/96124.html
1. GenericPortlet 。为具体类,继承自 Portlet ,提供了基本的一些功能。
2. Portlet 。为 Portlet 接口部分,在新编写 Portlet 时均需要直接实现此接口或继承已实现此接口的 Portlet 类 ( 如 GenericPortlet) ,此接口控制了 Portlet 的整个 Lifecycle ,根据 JSR168 规范,将 Portlet 的 Lifecycle 划分为了三个阶段:
(1) init 。初始化此 Portlet ,在一个 Lifecycle 中 Portlet 只可初始化一次。通过传入的 PortletConfig 可获得 PortletContext 。
(2) handlerRequest 。在此阶段规范将其分为了 processAction 以及 render 两种概念, processAction 表示此 Portlet 与用户的交互过程的处理; render 则主要控制了 Portlet 的内容的显示,用于组装 Portlet 的 fragment (不好翻译, ^_^ )。
(3)destroy 。结束此 Portlet 的 Lifecycle ,可在此部分进行 Portlet 的一些资源的回收等工作。
Portlet 容器通过 Portlet 的一个标识符调用 Portlet 的接口进行与 Portlet 的交互。
Portlet 接口依赖 PortletConfig 、 ActionRequest 、 ActionResponse 、 RenderRequest 、 RenderResponse ,这和 Servlet 非常的相似。
3. PortletRequest 。此接口类似 HttpServletRequest ,通过此接口获取所有与当前 Portlet 相关的参数、 Portlet 的 Mode 、 Portlet 的 WindowState 、 Portal 的上下文环境、 Portlet 的 Preference 、 PortletSession 。
4. ActionRequest 。此接口继承自 PortletRequest ,通过此接口在 Portlet 的 processAction 中通过 ActionRequest 可获得相关的 Portlet 的交互式请求的参数。
5. RenderRequest 。此接口继承自 PortletRequest ,目前规范中此接口中未定义任何方法。
6. PortletResponse 。此接口类似与 HttpServletResponse ,提供页面显示 Portlet 时的一些内容的写入。
7. ActionResponse 。此接口继承自 PortletResponse ,提供了交互相关的设置 PortletMode 以及其 WindowState 的方法。
8. RenderResponse 。此接口继承自 PortletResponse ,提供了完全类似于 HttpServletResponse 的方法,由于 Portlet 只提供片断式的内容,和 Servlet 提供一个完整的页面内容不同,在 response 时无法设置页面的 contentType 等相关的页面头级的东西。
9. PortletConfig 。此接口非常类似于 ServletConfig ,用于获取 Portlet 配置文件 (portlet.xml) 中的初始参数,类似于 ServletConfig 获取 web.xml 中的初始参数,通过 PortletConfig 可获取 Portlet 的相关上下文对象 PortletContext 。
10. WindowState 。此具体类用于定义 Portlet 所支持的 WindowState 。
11. PortletMode 。此具体类用于定义 Portlet 所支持的 Mode (默认提供的为 View 、 Edit 、 Help )。 Portlet 容器厂商可根据需要提供特殊的 Mode 。
12. PortalContext 。此接口类似于 ServletContext ,用于获取 Portal 相关的上下文信息,如 Portal 的提供商信息等等。
13. PortletPreference 。此接口主要用于考虑 Portlet 的个性化定制的数据的保存,此接口并不代表要替代用于保存个性化定制信息的数据库,可用于保存一些数据量不大情况下的特殊偏好。
14. PreferenceValidator 。此接口用于检测 portlet.xml 中的 Preference 参数的合法性。
15. PortletSession 。此接口非常类似于 HttpSession ,用于串接 Portlet 中的 Session 数据。
16. PortletContext 。此接口用于获取与 Portlet 容器相关的上下文信息。
17. PortletURL 。此接口有点类似 Jetspeed 中所使用的 $jslink.setAction 以及 $jslink.setPage 之类的方法,如果熟悉 Jetspeed 的架构的应该比较 熟悉这 个概念,这个主要为使得容器得以识别 View 层和 Model 层的交互的衔 接。
1. GenericPortlet 。为具体类,继承自 Portlet ,提供了基本的一些功能。
2. Portlet 。为 Portlet 接口部分,在新编写 Portlet 时均需要直接实现此接口或继承已实现此接口的 Portlet 类 ( 如 GenericPortlet) ,此接口控制了 Portlet 的整个 Lifecycle ,根据 JSR168 规范,将 Portlet 的 Lifecycle 划分为了三个阶段:
(1) init 。初始化此 Portlet ,在一个 Lifecycle 中 Portlet 只可初始化一次。通过传入的 PortletConfig 可获得 PortletContext 。
(2) handlerRequest 。在此阶段规范将其分为了 processAction 以及 render 两种概念, processAction 表示此 Portlet 与用户的交互过程的处理; render 则主要控制了 Portlet 的内容的显示,用于组装 Portlet 的 fragment (不好翻译, ^_^ )。
(3)destroy 。结束此 Portlet 的 Lifecycle ,可在此部分进行 Portlet 的一些资源的回收等工作。
Portlet 容器通过 Portlet 的一个标识符调用 Portlet 的接口进行与 Portlet 的交互。
Portlet 接口依赖 PortletConfig 、 ActionRequest 、 ActionResponse 、 RenderRequest 、 RenderResponse ,这和 Servlet 非常的相似。
3. PortletRequest 。此接口类似 HttpServletRequest ,通过此接口获取所有与当前 Portlet 相关的参数、 Portlet 的 Mode 、 Portlet 的 WindowState 、 Portal 的上下文环境、 Portlet 的 Preference 、 PortletSession 。
4. ActionRequest 。此接口继承自 PortletRequest ,通过此接口在 Portlet 的 processAction 中通过 ActionRequest 可获得相关的 Portlet 的交互式请求的参数。
5. RenderRequest 。此接口继承自 PortletRequest ,目前规范中此接口中未定义任何方法。
6. PortletResponse 。此接口类似与 HttpServletResponse ,提供页面显示 Portlet 时的一些内容的写入。
7. ActionResponse 。此接口继承自 PortletResponse ,提供了交互相关的设置 PortletMode 以及其 WindowState 的方法。
8. RenderResponse 。此接口继承自 PortletResponse ,提供了完全类似于 HttpServletResponse 的方法,由于 Portlet 只提供片断式的内容,和 Servlet 提供一个完整的页面内容不同,在 response 时无法设置页面的 contentType 等相关的页面头级的东西。
9. PortletConfig 。此接口非常类似于 ServletConfig ,用于获取 Portlet 配置文件 (portlet.xml) 中的初始参数,类似于 ServletConfig 获取 web.xml 中的初始参数,通过 PortletConfig 可获取 Portlet 的相关上下文对象 PortletContext 。
10. WindowState 。此具体类用于定义 Portlet 所支持的 WindowState 。
11. PortletMode 。此具体类用于定义 Portlet 所支持的 Mode (默认提供的为 View 、 Edit 、 Help )。 Portlet 容器厂商可根据需要提供特殊的 Mode 。
12. PortalContext 。此接口类似于 ServletContext ,用于获取 Portal 相关的上下文信息,如 Portal 的提供商信息等等。
13. PortletPreference 。此接口主要用于考虑 Portlet 的个性化定制的数据的保存,此接口并不代表要替代用于保存个性化定制信息的数据库,可用于保存一些数据量不大情况下的特殊偏好。
14. PreferenceValidator 。此接口用于检测 portlet.xml 中的 Preference 参数的合法性。
15. PortletSession 。此接口非常类似于 HttpSession ,用于串接 Portlet 中的 Session 数据。
16. PortletContext 。此接口用于获取与 Portlet 容器相关的上下文信息。
17. PortletURL 。此接口有点类似 Jetspeed 中所使用的 $jslink.setAction 以及 $jslink.setPage 之类的方法,如果熟悉 Jetspeed 的架构的应该比较 熟悉这 个概念,这个主要为使得容器得以识别 View 层和 Model 层的交互的衔 接。