Java Portlet规范JSR168详解

需积分: 0 10 下载量 131 浏览量 更新于2024-12-30 收藏 428KB PDF 举报
"Java Portlet 规范-JSR168(英文版)" Java Portlet 规范(JSR 168)是Java Community Process(JCP)发布的一个标准,用于定义portlet如何在Java应用服务器,特别是门户服务器上运行。这个规范的主要目标是促进portlet之间的互操作性和可移植性,使得开发者可以创建独立于门户实现的应用组件,这些组件可以在不同的门户环境中无缝集成。JSR 168 Version 1.0是在2003年10月7日发布的最终完成版本。 portlet是一种轻量级的Web应用程序组件,它能够嵌入到门户页面中,提供动态内容、功能或交互性。通过JSR 168,portlet开发者可以获得一系列接口和类,这些接口和类定义了portlet与门户服务器之间的通信方式,以及portlet如何处理用户请求、渲染内容和管理状态。 规范的核心概念包括: 1. **portlet API**:JSR 168提供了portlet开发所需的一套API,包括Portlet接口,该接口定义了portlet生命周期中的主要方法,如doView、doEdit等。此外,还有PortletConfig接口,用于portlet获取配置信息;PortletContext接口,提供portlet与应用服务器之间的上下文信息。 2. **portlet生命周期**:portlet有三个主要的生命周期阶段——初始化、处理请求和销毁。初始化阶段,portlet接收PortletConfig对象;处理请求阶段,portlet响应用户的请求,如提交表单数据;销毁阶段,portlet清理资源。 3. **渲染与事件处理**:portlet通过renderRequest和renderResponse对象来渲染内容。事件处理允许portlet之间进行通信,一个portlet可以通过发布事件,其他portlet可以订阅并处理这些事件。 4. **portlet配置**:portlet可以通过portlet.xml文件进行配置,定义portlet的元数据,如portlet名称、描述、标题、参数等。 5. **安全性和隐私**:JSR 168规定portlet应遵循应用服务器的安全策略,例如,portlet可以访问用户的会话和身份信息,但必须尊重用户的隐私设置。 6. **portlet模式**:portlet有几种操作模式,如查看模式、编辑模式和帮助模式,每种模式下portlet的行为可以不同。 7. **portlet上下文**:portlet通过PortletContext对象获取与portlet相关的全局信息,如portlet的ID、初始化参数等。 8. **portlet窗口状态**:portlet窗口可以处于两种状态之一——最大化或正常。portlet根据窗口状态调整其显示。 9. **portlet首选项**:portlet可以存储和检索用户的首选项,这些首选项可以影响portlet的行为或外观。 JSR 168的出现极大地促进了portlet开发的标准化,使得开发者可以编写一次portlet,然后在支持JSR 168的任何门户服务器上部署和运行。随着后来JSR 286(Portlet 2.0)的发布,进一步增强了portlet的功能和灵活性,但JSR 168仍然是许多现有portlet的基础。