Welcome 微信登录

首页 / 软件开发 / JAVA / JSR 286 Portlet的新特性,第1部分: Portlet 2.0新特性介绍

JSR 286 Portlet的新特性,第1部分: Portlet 2.0新特性介绍2012-07-09 IBM 刘旭进 闫志东关于本系列

本系列文章专门针对具有 JSR 168 Portlet 开发基础,并且想了解 JSR 286 Portlet 新特性和开发流程的开发人 员。在学习完本系列后,您将了解相对于 JSR 168 Portlet,JSR 286 Portlet 究竟提供了哪些增强功能, 以及这些新增特性在实际开发 中的应用。

第 1 部分将简单回顾 JSR 168 Portlet, 并列出了 JSR 286 Portlet 的新增内容。

第 2 部分和第 3 部分将 通过在 Apache Pluto 2.0 平台上开发和部署 Portlet 应用程序, 向读者介绍 JSR 286 Portlet 新特性的使用方法。

关于本系列

本系列文章专门针对具有 JSR 168 Portlet 开发基础,并且想了解 JSR 286 Portlet 新特性和开发流程的开发人 员。在学习完本系列后,您将了解相对于 JSR 168 Portlet,JSR 286 Portlet 究竟提供了哪些增强功能, 以及这些新增特性在实际开发 中的应用。

第 1 部分将简单回顾 JSR 168 Portlet, 并列出了 JSR 286 Portlet 的新增内容。

第 2 部分和第 3 部分将 通过在 Apache Pluto 2.0 平台上开发和部署 Portlet 应用程序, 向读者介绍 JSR 286 Portlet 新特性的使用方法。

关于本文

本文假定读者熟知 JSR 168 Portlet,并对 J2EE 基本常识有一定了解。本文主要以理论的方式向读者介绍 JSR 286 Portlet 的 以下新增特性:

资源服务

事件

共享呈现参数

Portlet 过滤器

Portlet 窗口

Portlet 和 JSR 168

Portlet 是部署在容器内用来生成动态内容的 Web 组件,与 servlet 类似,portlet 的整个生命周期从 init 到 destroy 的 过程都在 portlet 容器中进行。Java Portlet Specification 对 portlet API、标准化用户数据、参数设置、portlet 请求以及响应、 部署、打包以及安全等方面都做了详细的规定,以此来实现 portlet 之间以及 portlet 与 portlet 容器之间的交互和协作。Java Portlet Specification 1.0, 即 Java Specification Request(JSR)168 发布于 2003 年 10 月。

JSR 286 及其新特性

JSR 168 目前在业界受到广泛支持,而且它由开放源码支持。标准和产品的第一个版本存在一定的缺陷,仅支持最基本的用例,在 功能上有一些限制。而且 Java Portlet Specification V1.0 也存在这种情况,因此,经过三年之后,大多数支持 Java Portlet Specification V1.0 的门户产品都提供一些附加扩展,以支持更高级的用例,这些附加的扩展造成了各个门户产品的标准不统一,彼此间 的交互协作成了不可避免的问题。为了更好地规范 portlet 开发,以适应业界发展,并提供适应于最高级别用例的标准解决方案,从而为 这些高级功能提供互操作性,在 2005 年 11 月开始了 Java Portlet Specification V2.0(称为 JSR 286)的开发,Java Portlet Specification V2.0 目前已经进入 Final draft 的等待审批阶段,并计划在 2008 年 3 月正式发布。JSR 286 最终草案兼容了 JSR 168 ,并完善了 JSR 168 的部分功能,并提供了诸多 JSR 168 所没有的新特性,例如资源服务、事件、portlet 过滤器、共享呈现参数及 portlet 窗口等。与 V1.0 类似,V2.0 也将基于 J2EE 1.4,因此可让 Portlet 使用 J2EE 1.4 增强(如 JSP 2.0)。下面是该新规范的 一些主要功能及特性:

资源服务:一种新的通过 portlet 呈现资源的方式。

事件:通过发送事件和接收事件来实现 portlet 之间的通信。