分享

Portlet

 louai 2011-06-28

Portlet

百科名片

Portlet是基于java的web组件,由portlet容器管理,并由容器处理请求,生产动态内容。Portals使用portlets作为可插拔用户接口组件,提供信息系统的表示层。作为利用servlets进行web应用编程的下一步,portlets实现了web应用的模块化和用户中心化。 portlet规范,即jsr(Java Standardization Request )168,是为了实现portal和portlet的互操作。它定义了portlet和portlet容器之间的和约,让portlet实现个性化、表示和安全的api集。规范还定义了怎样在portlets应用中打包portlets。

 


 
 

概述

  随着企业级portal的大量涌现,不同提供商创建了不同的portal组件api,即portlet。不同的不兼容给应用服务商,portal用户和portal server提供商都造成了问题。为了消除这些问题,jsr168,即portlet规范提出,从而提供portlet和portal间的互操作性。jsr168定义,portlet是基于java的web组件,portlet容器处理request并生成动态内容,管理portlet。portal使用portletportlet作为可插入用户接口组件,提供信息系统的表示层。
  jsr168的目标是:
  定义portlet的运行时环境,即portlet容器
  定义portlet和portlet容器之间的api集
  提供portlet存储易失数据和持久数据的机制
  提供portlet包含servlet和jsp的机制
  定义方便部署的portlet打包方法
  提供jsr168规范下的portal的二进制portlet便携性
  通过WSRP(web service for remote portlet)协议运行符合jsr168规范的远程portlet
  IT界已经广泛的接受了jsr168规范。所有的portal领域主要公司都是jsr168专家组的成员:Apache,AGT,BEA,Boeing,Borland,Broadvision,Citrix,EDS, Fujitsu, Hitachi, IBM, Novell, Oracle, SAP, SAS Institute, Sun Microsystems, Sybase, TIBCO, and Vignette。官方支持列表甚至更长。
  jsr168最终版本已在2003年九月发布。
  本文中,首先定义了portal和portlet,然后解释了jsr168的概念,包括api的基本对象。接下来,深入到jsr的高级功能,比如用户信息,本地化和缓存。然后讲到了扩展,从而使portal提供者扩展当前portlet规范的函数功能。本文包含了portlet应用的打包和部署。
  基本定义这部分中,讲讲述portlet规范中的基础定义,包括portal基本构架,portlet容器和portal页面。

portal

  portal是一个基于web的应用,它能提供个性化,单点登陆,不同源的内容聚合,和信息系统的表示层集中。聚合是整合不同web页面源数据的过程。为了提供用户定制的内容,portal可能包含复杂的个性化特征。为不同用户创建内容的portal页,可能包含不同的portlet集。
  表示了portal的基本架构。portal web应用处理客户请求,找回用户当前页中的portlet,然后调用portlet容器,从新获取各个portlet的内容。portlet容器提供portlet的运行时环境,并通过portlet api调用portlet。portal通过portlet invoker api调用portlet容器。portlet容器通过portlet provider spi(service provide interface)获取portal信息。
  表示了基本的portal页面组件。portal页面本身代表一个完整的标记文档,并且聚集了一些portlet窗口。除portlet外,页面可能还包含导航区合标志区(navigation area and banners)。一个portlet窗口包含一个标题栏,装饰,和portlet产生的内容。装饰可以包括改变portlet窗口状态和模式的按钮(后文将解释这些概念)。

portlet

  正如上文所说,portlet是基于java的web组件,处理request并产生动态内容。portlet产生的内容称为片段,即一段遵守中心规则的标记(比如html, xhtml,wml(无线标记语言))。如图三所示,多个片段可以聚合成一个完整的文档。多个portlet聚合在一起,组成portal页。portlet容器控制portlet的生命周期。
  web客户通过portal实现的request/response范例与portlet交互。通常,portlet中的动作会被portal接受,从而用户与portlet中的内容交互(比如点击portlet中的链接,提交form),提交到portlet的目标。
  对不同的用户,根据其配置,同一个portlet会产生不同的内容。

portlet容器

  portlet容器提供它们需求的运行时环境并运行portlet。它包含portles并控制它们的生命周期。容器提供portlet参数的持久存储机制,它接受来自portal的request,并在其持有的portlet上执行request。容器不负责portlet产生内容的聚合,portal自己处理内容聚合。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多