支持WSRP2.0规范的联邦门户的设计与实现

上传人:lisu****2020 文档编号:161275534 上传时间:2022-10-13 格式:DOCX 页数:85 大小:843.12KB
收藏 版权申诉 举报 下载
支持WSRP2.0规范的联邦门户的设计与实现_第1页
第1页 / 共85页
支持WSRP2.0规范的联邦门户的设计与实现_第2页
第2页 / 共85页
支持WSRP2.0规范的联邦门户的设计与实现_第3页
第3页 / 共85页
资源描述:

《支持WSRP2.0规范的联邦门户的设计与实现》由会员分享,可在线阅读,更多相关《支持WSRP2.0规范的联邦门户的设计与实现(85页珍藏版)》请在装配图网上搜索。

1、分类号密级 UDC编号 研究生院 硕士学位论文 支持 WSRP 2.0 规范的联邦门户的设计与实现周明 指导教师张波副研究员 软件研究所 申请学位级别硕士学科专业名称计算机软件与理论 论文提交日期2011-04论文答辩日期 培养单位软件研究所学位授予单位 研 究 生 院 独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作 及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果。与我一同工 作的同志对本研究所做的任何贡献均已在论文中作了明确的说明。签名: 日期: 关于论文使用授权的说明本人完全了解软件研究所有关保留、使用学位论

2、文的 规定,即:软件研究所有权保留送交论文的复印件,允许 论文被查阅和借阅;软件研究所可以公布论文的全部或部 分内容,可以采用影印、缩印或其它复制手段保存论文。(保密的论文在解密后应遵守此规定)支持 WSRP 2.0 规范的联邦门户的设计与实现摘要门户(Portal)是基于组件的 web 应用,它可以集成 Internet 环境下各种现 有应用系统、数据资源和网络信息资源,并为用户形成个性化的访问页面,实现 信息的集成和发布。Portlet 是门户中的可重用组件,能够提供对 web 内容、应用 程序和其他资源的访问。JSR168 规范(Portlet 1.0)和 JSR286 规范(Portl

3、et 2.0) 提供了 Portlet 的标准。随着门户的广泛使用,门户已经成为获取信息,巩固和整合 IT 基础设施的 平台。于是来自于同一公司的、自主的、分散的多个部门都部署了自己的门户, 但这些门户之间却无法进行内容共享,即 Portlet 在门户之间的集成。于是出现 了联邦门户(Federated Portals),它是由多个分散的门户构成的网络,这些门户 基于共同的标准协同工作。联邦门户实现了在异构门户之间共享远程内容,这些 远程内容来自于名为生产者的门户,被收集、组合和运行在名为消费者的门户中。联邦门户的基本特征是基于规范实现跨门户的系统联合。因此联邦门户的关 键在于对门户间互操作标

4、准的制定。这个标准就是 OASIS 推出的 WSRP(Web Services for Remote Portlets)规范。WSRP 规范提供了门户间互操作标准,成为 联邦门户的基础技术。它有 1.0 和 2.0 两个版本,分别产生于 2003 年和 2008 年。为了提高联邦门户应用的构建效率,增强异构门户互操作性的能力,完善联 邦门户的用户友好性,需要为 OncePortal 提供支持 WSRP 2.0 规范的联邦门户。本文从 WSRP 2.0 规范和联邦门户的需求出发,设计并实现了支持 WSRP 2.0 规范的联邦门户。首先根据 WSRP 2.0 规范对远程 Portlet 的语法模型

5、、交互模型 和生命周期模型三个方面进行特征分析;其次总结了联邦门户的核心功能、系统 边界,并给出了联邦门户的设计;然后从 Portlet URL 的生成与改写、Portlet 统 一协作框架、远程 Portlet 资源服务、WSRP 容器和代理容器以及 Portlet 缓存共 5 个方面介绍了联邦门户的关键技术;最后基于以上分析和设计,实现了联邦门户 扩展应用,并将其应用在中科院软件所自主研发的门户产品 OncePortal 中。关键词:联邦门户,WSRP 2.0,远程 Portlet,协作Design and Implementation of Federated Portals Suppo

6、rting WSRP 2.0Sun Guoyang (Computer Software and Theory) Directed by Zhang BoAbstractPortal is a component based web application, it can integrate various existing applications, data resources and network information resources on the internet, and generate personalized web page for users to achieve

7、information integration and publication. Portlet is a reusable component in portal, which is able to provide the access of web pages, applications and other resources. JSR168 specification (Portlet 1.0) and JSR286 specification (Portlet 2.0) both provide standards of Portlet.With the widespread use

8、of the portal, Portals have become platforms for accessing information and consolidating and integrating IT infrastructure. However, autonomous and decentralized departments from same organization have been deploying their own enterprise portals, most of which have been unable to share contents, or

9、integrate Portlets between Portals. And then Federated Portals emerged. Federated Portals are decentralized networks of portals working together and using the same standards. Federated Portals achieved the goal of sharing remote contents which are offered by a portal application called a producer, a

10、nd are collected and brought together at runtime to a portal application called a consumer.The basic characteristic of federated portals is system union across portals based on standards, so the key point is developing of standards for interoperability between portals. Then WSRP, or Web Services for

11、 Remote Portlets, released by OASIS, becomes the standard and fundamental technology, it has two versions: WSRP 1.0 released in 2003 and WSRP 2.0 released in 2008.To improve the efficiency of building Federated Portals, to enhance the interoperability among heterogeneous portals, and to make federat

12、ed portals more user friendly, we need to design OncePortal based federated portals supporting WSRP 2.0.This paper presents a design and implementation of Federated Portals according to WSRP 2.0 and requirements of OncePortal. First, this paper made a detailed analysis of Portlets characteristics, s

13、uch as syntax model, interaction model and lifecycle model. Secondly paper summarized Federated Portals core functions, system boundary, and proposes a design of the system. And then key technologies of federated portals are introduced, such as the creating and rewriting of Portlet URL, the unified

14、Portlet coordination framework, resource service, WSRP container and proxycontainer, Portlet cache, and so on. Finally, the implementation of Federated Portals is given, which is based on the above analysis and design. The product has been applied to OncePortal developed by Institute of Software, Ch

15、inese Academy of Sciences.Keywords: Federated Portals, WSRP 2.0, Remote Portlet, Coordination目录第一章引言11.1研究背景11.2论文的主要工作21.2.1远程 Portlet 的特征分析21.2.2联邦门户的分析与设计21.2.3联邦门户的关键技术21.2.4联邦门户在 OncePortal 中的实现31.3论文内容的组织4第二章门户与联邦门户52.1门户52.1.1门户与门户中间件52.1.2门户的功能和特点62.1.3门户的发展阶段72.1.4门户的体系结构82.1.5门户的相关规范92.1.6

16、OncePortal 系统概述112.2联邦门户122.2.1联邦门户与远程 Portlet122.2.2联邦门户的功能和特点142.2.3联邦门户的应用优势142.2.4联邦门户的体系结构152.2.5联邦门户的相关规范162.2.6联邦门户的相关产品182.3远程 Portlet 的特征212.3.1远程 Portlet 的语法模型212.3.2远程 Portlet 的交互模型232.3.3远程 Portlet 的生命周期模型25第三章联邦门户的分析与设计293.1联邦门户的需求分析293.1.1生产者的功能需求293.1.2消费者的功能需求323.2联邦门户的系统边界353.3联邦门户的

17、体系结构363.3.1生产者插件的体系结构363.3.2消费者插件的体系结构383.3.3该体系结构下的请求处理流程40第四章联邦门户的关键技术414.1 Portlet URL 的生成与改写414.1.1 消费者 URL 改写(Consumer URL Rewriting)414.1.2 生产者 URL 写(Producer URL Writing)424.1.3 URL 改写方式的比较434.2 Portlet 统一协作框架434.2.1 本地 Portlet 协作434.2.2 远程 Portlet 协作454.2.3 传统 Portlet 协作的不足之处464.2.4 协作信息的转换4

18、74.2.5 协作信息的共享484.2.6 支持 WSRP 2.0 规范和 Portlet 2.0 规范的协作框架的设计494.2.7 小结504.3 远程 Portlet 资源服务504.3.1 在生产者的 Portlet 页面中链接资源514.3.2 WSRP 容器对“直接链接资源”的 URL 的处理524.3.3 资源代理524.3.4 代理容器对“直接连接资源”的 URL 和 JSR286 Resource URL 的 识别534.3.5 “直接连接资源”的 URL 在“生产者 URL 写”中的处理534.4 WSRP 容器和代理容器534.4.1 WSRP 容器544.4.2 代理容

19、器564.5 Portlet 缓存58第五章联邦门户在 OncePortal 中的实现615.1 OncePortalWSRP 简介615.2 一些关键技术在 OncePortalWSRP 中的实现625.2.1 Portlet URL 的生成与改写625.2.2 Portlet 统一协作框架635.2.3 OncePortal 中的 Portlet 容器635.3 OncePortalWSRP 包的介绍64第六章结束语696.1 本论文的主要贡献696.2 进一步的工作70参考文献71发表文章目录73致谢75第一章引言本章介绍研究背景、论文工作和论文组织。1.1研究背景Portal在英文中的

20、原始含义为“入口”。在计算机领域,Portal有几种不同含义。 从应用系统的角度看,一种含义指网络门户(Internet Portal),如新浪,雅虎等门 户网站,它们向网络用户提供了通向Internet的大门。另一种含义指企业信息门 户(Enterprise Information Portal),它是一个统一工作平台,可集成企业的数据资 源和应用系统,使得企业员工可以一站式地访问各种信息和各业务系统,参与企 业业务流程1。从软件开发的角度看,Portal是一种门户中间件。它是一个构建、 运行和维护企业信息门户的支撑系统,它提供了面向表示层的开放集成框架。通 过其提供的系统服务和相关工具,P

21、ortal可集成应用系统、数据资源和互联网资 源;根据每个用户使用特点和角色的不同,Portal提供个性化的访问页面,从而 实现灵活、有效、集成的交互工作环境。本文中的门户即Portal,指的是企业信 息门户与门户中间件。随着企业门户应用的发展,门户已经成为获取信息,巩固和整合 IT 基础设 施的平台。在过去数年中,于是来自于同一公司的、自主的、分散的多个部门都 部署了自己的门户,但这些门户之间却无法进行内容共享,或者说 Portlet 在不 同门户之间的集成。由于分散独立的门户无法共享内容和协同,形成了“烟囱门 户”的趋势2。一个门户无法同时集成到其他门户上的应用和内容,或者说是实 现跨门户

22、的交叉访问。门户的扩张使得共享信息变得更加困难。为了解决这些问题,公司必须能够部署联邦门户,并采用基于标准的平台, 以实现信息的统一。联邦门户(Federated Portals)由多个分散的门户构成的网络, 这些门户基于共同的标准协同工作。它是对普通门户应用的扩展,为不同门户之 间共享内容提供了解决方案。在过去,一个 Portlet 只能被托管它的本地门户使 用。而通过联邦门户,一个门户能够访问其它门户的 Portlet。联邦门户拓宽了门 户可以利用的资源范围。增加了 Portlet 的复用性,从而节约了 IT 费用,减少了 托管和部署重复 Portlet 的时间,对企业整合遗留 IT 资产

23、有重要意义。联邦门户的基本特征是基于规范实现跨门户的系统联合。因此联邦门户的关 键在于对门户间互操作标准的制定。WSRP(Web Service for Remote Portlets)是 联邦门户的基础技术3。它是一个定义了如何利用基于 SOAP 的 Web Services在门户应用程序中生成标记片断的规范。通过定义一组公共接口,WSRP 允许 门户在它们的页面中显示运行的远程 Portlet,而不需要 Portlet 开发人员进行任何 额外的开发和部署活动。对于最终用户来说,这些 Portlet 就和运行在他们本地 的门户上一样,但是实际上这些 Portlet 来自于远程运行的 Port

24、let 容器,并且交 互是通过 SOAP 消息的交换来实现的。在面向服务的体系结构中利用 WSRP 是 一个强大的组合,从而使面向呈现的 Portlet 应用程序可以被发现并重用。可以 说 WSRP 是 UI 层的 Web Service,或者 Portal 中的 SOA4。WSRP 1.0 规范5已经于 2003 年和 Portlet 1.0 规范(JSR168)6一起发布, 随着 Portlet 2.0(JSR286)规范7的出现,WSRP 1.0 已经不能够满足 Portlet 远程 化的需要,于是 OASIS 于 2008 年 6 月推出了 WSRP 2.0 规范8。WSRP 2.0

25、规范 增加了消费者中介的协作、远程 Portlet 的资源服务、远程 Portlet 的生命周期管 理拓展、聚合功能增强、以及解析协议扩展的方法等。消费者中介的协作包括事 件分发和和状态共享两个方面。增加的生命周期管理包括:租赁资源、自动清除 不使用的资源、以及在各种范围内移动定制的 Portlet 的能力。1.2 论文的主要工作论文从 WSRP 2.0 规范和联邦门户的需求出发,对联邦门户进行设计与实现, 主要完成以下工作:远程 Portlet 的特征分析、联邦门户的分析与设计、联邦门 户的关键技术以及联邦门户在 OncePortal 中的实现。1.2.1 远程 Portlet 的特征分析本

26、文根据 JSR286 规范和 WSRP 2.0 规范,从语法模型、交互模型、生命周 期模型三个方面对远程 Portlet 的特征进行了分析,阐述了本地 Portlet 和远程 Portlet 的区别和联系。1.2.2 联邦门户的分析与设计本文通过分析联邦门户的任务及特点,通过运行环境、管理功能和扩展应用 三个方面,总结了联邦门户的生产者和消费者的开发需求;并确定了支持 WSRP 2.0 规范的联邦门户和系统边界和交互对象,最后给出联邦门户体系结构和功能 模块的设计。这是论文下面工作的基础。1.2.3 联邦门户的关键技术本文从 URL 改写、远程 Portlet 的协作、远程 Portlet 的

27、资源服务、WSRP 容 器、代理容器以及 Portlet 缓存等方面介绍了联邦门户中的关键技术; Portlet URL 的生成与改写生产者生成 Portlet 的标记片断时,确保标记片断中 Portlet URL 的正确性至 关重要,Portlet URL 应当指向消费者而非生产者,论文结合 WSRP 2.0 规范,介 绍了两种 Portlet URL 的生成与改写的方式,并对它们进行了比较。 Portlet 统一协作框架JSR286 规范和 WSRP 2.0 规范未能深入涉及远程 Portlet 和本地 Portlet 的协 作问题。论文分析了 JSR286 中 Portlet 协作和 W

28、SRP 2.0 中 Portlet 的协作,指出 了 Portlet 的协作与规范的依赖关系,然后通过引入协作信息转换和服务注册机 制解除 Portlet 协作对规范的依赖,最后给出了协作框架的定义和设计。 远程 Portlet 资源服务在 Portlet 的标记片断中,除了 Portlet URL 外,还存在“直接连接到资源” 的 URL。保证这种 URL 的正确性至关重要,本文分析了在生产者的 Portlet 页面 中链接资源的几种方式,以及生产者和消费者对该类型 URL 的处理方式,并给 出了资源代理的基本原理和相关分析。 WSRP 容器和代理容器对于远程 Portlet 而言,它在生产

29、者和消费者中表现出不同的行为。因此, 论文针对该特性分别开发了 WSRP 容器和代理容器。论文先对 WSRP 容器进行 了介绍,并和本地 Portlet 容器做了对比分析;然后讲述了消费者的代理技术, 给出了使用代理容器的原因,并和本地 Portlet 容器做了对比分析。 Portlet 缓存WSRP 规范提供了标记片断的缓存方案,但是未能给出服务描述/Portlet 描 述的缓存方案,因此论文设计了针对服务描述/Portlet 描述的缓存。论文首先介 绍了标记片断缓存方案的基本原理,然后介绍了基于异步 Web Services 的推式缓 存和基于有效期验证的拉式缓存的原理和设计。1.2.4联

30、邦门户在 OncePortal 中的实现论文根据前面的分析和设计,实现了 OncePortalWSRP,它是门户的扩展应 用,论文首先给出了 OncePortalWSRP 的功能和特点,然后介绍了主要关键技术 在 OncePortal 中的实现,最后对包的结构做了介绍。1.3论文内容的组织论文的后续章节按以下方式组织: 第二章首先介绍门户基本概念、主要功能,发展阶段、体系结构、相关规范,并简要描述 OncePortal 的系统框架;其次介绍了联邦门户的基本概念、功能特点、 应用优势、体系结构、相关规范,并简单介绍了联邦门户的相关产品;最后从语 法模型、交互模型、生命周期模型三个方面分析了远程

31、Portlet 的特征。第三章主要对支持 WSRP 2.0 规范的联邦门户进行分析与设计。首先从运行 环境、管理功能和扩展应用三个方面进行分析,分别介绍了联邦门户的生产者和 消费者的功能需求;然后通过对联邦门户系统边界的分析来确定联邦门户的组成 以及交互对象,最后给出了联邦门户的体系结构,并分析了各个模块的接口和请 求处理流程。第四章介绍了联邦门户中的主要关键技术,包括 Portlet URL 的生成与改写、 Portlet 统一协作框架、远程 Portlet 的资源服务、WSRP 容器和代理容器、以及 Portlet 缓存。论文分别讨论了它们的需求来源、技术原理和设计方案。第五章介绍了联邦门

32、户在门户中间件 OncePortal 中的实现。论文首先给出了 OncePortalWSRP 的功能和特点,然后介绍了主要关键技术在 OncePortal 中的实 现,最后对包的结构做了介绍。第六章对论文工作进行了总结,并对进一步的研究开发工作提出展望。第二章门户与联邦门户本章首先介绍了门户和门户中间件的基本概念、功能特点、发展阶段、体系结构、相关 规范,并简单地介绍了 OncePortal 系统;接下来介绍了联邦门户的基本概念、功能特点、 应用优势、体系结构、相关规范,并简单地介绍了联邦门户的相关产品;最后从语法模型、 交互模型、生命周期模型三个方面分析了远程 Portlet 的特征。2.1

33、门户2.1.1门户与门户中间件门户(Portal)的原意是正门、入口。在计算机领域,门户是指访问各种信 息资源的入口,它最早是用来指代新浪,雅虎等提供综合性新闻访问入口的公共 门户网站。在企业的信息化过程中,门户的概念得到了进一步的扩展。企业信息门户 EIP(Enterprise Information Portal)的概念是传统的门户概念在企业内部的延伸, 企业信息门户以企业运营的相关业务信息为主,其对象是企业的员工以及供应 商、销售商等与本企业密切相关的用户。企业信息门户是一个企业的信息窗口, 它的主要用途是发布企业内部和外部的各种信息,这样使企业员工、客户和合作 伙伴能够从单一的渠道访问

34、其所需的个人化信息。除了企业信息之外,企业也能 够通过这一单一渠道集成和发布多种应用资源,EIP 的用户可以通过它来执行多 种企业应用,实现各种应用工作。通过集成企业信息和应用,企业用户仅使用单 一的访问方式就能更好的访问企业信息并参与到企业信息流程中。企业信息门户的大量应用直接导致了门户中间件的产生,门户中间件是构 建、运行和维护企业信息门户的支撑系统,它提供了面向表示层的开放集成框架。 系统管理员及开发人员基于门户中间件的管理界面,集成、开发并部署新的应用, 从而形成面向用户需求的门户系统。企业门户系统是从应用的角度看门户,而门 户中间件是从开发的角度看门户,他们是门户在企业信息领域不同阶

35、段的表现, 具备相同的特点。因此,在本文中,“门户”一词统称企业信息门户系统和门户 中间件。总体来讲,门户是一个应用系统集成框架,它将各种应用系统、数据资源和 互联网资源集成到一个信息管理平台之上,并以统一的界面提供给用户,使企业 可以快速地建立企业对客户、企业对员工和企业对企业的信息通道,使企业能够发布企业内外部的各种信息。2.1.2门户的功能和特点门户作为企业的信息和应用接入点,其在企业的业务和信息流程中起到了如 下的作用:首先,门户对企业内部来说是管理和查询日常业务的公用平台,员工 可以访问企业的客户、销售、生产、库存、财务等信息,以最低的成本共享和利 用企业的所有信息。其次,门户对外是

36、企业网站,通过门户及时向客户和合作伙 伴提供产品、服务的信息,开拓新的网上业务,推动企业走进电子商务。通过门 户,企业能够释放存储在内部和外部的各种信息,同时使企业员工、客户和合作 伙伴能够从单一的渠道访问其所需的个性化信息。虽然门户的具体实现多种多样,但一般认为门户应该具备如下一些功能:1)单一访问入口:也就是常说的单点登录(Single Sign On,简称 SSO)。 单点登录是应用集成领域的重要概念,它提供一个统一的机制用于管理用户的认 证,可以在用户的授权下在应用系统间按照某种规则共享认证信息,并代替用户 来完成一些具体的登录工作,其目的是允许用户仅仅通过一次登录就可以访问到 多个应

37、用。对于一个实现了单点登录功能的门户系统,当用户成功登录到门户之 后,如果要访问门户后台的某个集成应用,门户可以代替用户自动完成在该应用 上的登录验证过程,不需要用户输入任何信息,从而实现了单一的访问入口。2)信息聚合:门户可以聚合来自 Internet、XML 文档、数据库及应用系统 等不同来源、不同格式的信息,用户通过门户可以方便地访问到这些信息。3)业务集成:把分立系统的不同功能有效地组织起来,给用户提供一个统 一的信息服务功能入口,并利用相关的门户技术,整合后台业务系统,减少信息 孤岛的存在并降低重复投资,为用户提供更加完善的信息服务。4)内容管理、发布:对门户中的所有内容进行管理、整

38、合,对内容实现灵 活、有效的分类,使用不同的方式完成对内容的高效查找,根据特定的规则和路 径实现信息的正确发布。5)界面个性化:每个用户都可以定制自己的个性化访问页面,这一页面只 包含用户希望访问到的信息。同时,用户还能够设置信息及页面的访问风格以满 足自己的偏好需求。6)统一用户、权限管理:对各应用系统中的用户及所有权限进行统一的管 理。实现统一的用户资料,统一的用户认证,并完成同一用户在不同系统中的不 同权限的映射管理。7)安全访问控制:通过用户认证、角色分配、用户和组的授权、用户操作 监督等机制控制用户对信息和应用的访问,保证数据的机密性及完整性,使企业 业务流程正常运转。8)多设备支持

39、:将门户内部的信息按不同的格式(HTML、WML 等)进行 组织,以支持不同的设备、渠道的访问。例如,用户既可以通过普通 PC 访问、 也可以通过手机、PDA 等其他无线的接入方式来访问这些信息。从上面所描述的特点可以看出,门户能够通过超越现有分散的应用环境实现 企业信息和业务集成的目标。它把原来不同的内部部门的分割、不同的企业内外 的分割,通过系统的集成使其相互关系连接到一起,形成统一的、广泛的和相互 关联的企业应用环境。2.1.3门户的发展阶段按照 Gartner 的报告9,门户的发展所经历的阶段可划分为 6 代,通过分代, 可以表明门户产品在什么样的特定时间点上。不是所有的厂商支持不同代

40、中的所 有功能,但也有厂商推出了领先多达数年的产品。第一代门户提供了门户的基本功能,包括内容聚合、个性化的展现、一致的 搜索、基本的表现层的管理等。第一代的门户产品出现于 1997 年。第二代门户通过健壮的、可扩展的应用程序框架扩大了门户技术的基础,提 供了基本的应用程序集成,并开始出现协作特性。第三代门户提供了流程集成的能力,以及对 Web Services 和多门户的初步支 持。第四代门户是当前门户的分代。它提供了门户联邦特性、复合应用和 Portlet 标准的支持。这次的技术潮流独立于门户产品的使用方式,即终端用户可以使用 最新的第四代技术来进行第一代门户的部署。此外,门户的产品包装方式

41、发生了 变化,越来越倾向于提供一揽子的套件,比如应用平台套件(Application Platform Suites,缩写为 APS)和智能企业套件(Smart Enterprise Suites)。第五代门户是 SOA 门户,将对面向服务的业务应用(Services Oriented Business Applications,缩写为 SOBA)、包装的流程集成(Packaged Integrating Processes,缩写为 PIP)、包装的复合应用(Packaged Composite Applications,缩 写为 PCA)、流程编排(Process Orchestration

42、)和联合服务(Syndication of Services) 等等提供现成的支持。总之,第五代门户将会把 SOA 推向新的水平。第六代门户是普适门户(Portal Ubiquity),也可翻译为门户无处不在,它的 代表是移动门户(Mobile Portals 或 mPortals),即利用移动设备的优势引入新的 服务,向终端用户提供传统门户网站所不具备的普适性的好处。移动门户构建于 移动 Web 应用之上,更加注重用户体验,提供了有别于传统门户的内容。2.1.4门户的体系结构门户通常架构在 Web 服务器或者 Web 应用服务器的基础之上,以网页的形 式来发布各种信息和应用,它可以访问各种不

43、同来源的数据,集成各种企业应用。门户由如下这几部分组成:门户服务器(Portal Server)、门户组件容器(Portlet Container)、门户组件接口(Portlet API)和底层服务支持。门户的体系结构如图 2.1 所示。图 2.1门户体系结构图在门户的系统架构中,门户服务器是一个运行在应用服务器之上的 Web 应 用程序,用来处理用户的门户页面请求。当门户所架构的 Web 服务器接收到门 户用户对于页面的请求后,它将其请求转交给门户服务器。门户服务器接收到这 一请求后,通过底层管理模块,访问到这一请求所包含的用户的注册信息及其所 请求页面的注册信息。从中分析出页面所包含哪些

44、Portlet;然后它将用户请求消 息分解为对这些 Portlet 的请求消息,转发给 Portlet 容器执行;随后从 Portlet 容 器获取到 Portlet 响应(页面片段);最后根据页面注册信息中的 Portlet 的布局情 况,组装这些内容,并加上标题,导航,页角,颜色,肤表等附加部分,构造成 完整的门户页面形成完整的响应返回给用户。门户组件容器为 Portlet 组件提供运行时环境,管理 Portlet 组件的生命周期,并为 Portlet 组件的偏好设置提供持久化服务。它控制 Portlet 运行,接受来自门 户服务器的 Portlet 请求,然后通过 Portel API

45、接口调用相应的 Portlet 组件以获取 响应,并保存 Portlet 运行时的上下文环境。目前有 Portlet 1.0 规范和 Portlet 2.0 规范,它们规定了 Portel API 接口。关于这些规范的相关介绍参见 2.1.5。在门户环境下,应用程序以 Portlet 的形式进行组织。Portlet 是一种基于 Java 技术的、可插拔的 Web 组件,在门户中由 Portlet 容器进行管理,用以执行容器 转来的 Portlet 请求并完成动态内容生成,返回一段页面片段。Portlet 可以有不同 的数据来源,既可以是本地或者远程网页,也可能为数据库,同时还可能为应用 程序;

46、Portlet 可以是由开发者开发的完成特定功能或业务逻辑的组件亦可是对已 有资源的包装。通过集成显示多种 Portlet,门户可以在同一界面中为用户提供多 种不同来源的内容显示。门户的底层服务提供门户运行的支撑,包括但不限于如下几个部分:1) 用户及相关的角色、用户组、安全控制管理:负责存储、管理访问门户 的用户及信息,包括角色和所在用户组等,并记录用户的访问权限;2) 注册信息访问:负责记录和获取门户中的注册信息,这些信息包括门户 的主题、布局、客户端类型定义、信息格式定义等;3) 缓存机制:对用户所访问网页的内容或者 Portlet 返回的内容进行缓存, 提高执行效率,减少响应时间以获得

47、更好的用户体验;4) 页面管理:针对用户及其拥有的角色得到展示的页面内容并对用户个性 化的页面进行存储和管理;5) 日志管理:记录、管理门户服务器运行期间的各种信息、警告、错误等 日志记录;6) Portlet 管理:对部署在门户中的 Portlet 组件的定义及实体信息等进行管 理。2.1.5 门户的相关规范在门户技术领域有两个比较重要的规范,他们是 Portlet 1.0 规范、Portlet 2.0规范,下边分别对它们进行介绍。1) JSR168(Portlet 1.0 规范) 随着越来越多企业门户的出现,不同的供应商都根据自己的标准开发了各自的门户组件接口,即 Portlet 接口,规

48、定了对 Portlet 的访问方式,以及 Portlet 执行完毕返回结果的形式。这些互不兼容的接口给应用提供商、门户客户和门户提 供商带来了各种问题。为了解决这些问题,JCP 组织(Java Community Process) 发布了 Portlet 1.0 规范(JSR 168 Portlet Specification),从而提供了不同门户和 Portlet 之间的互操作性。Portlet 规范定义了整合不同信息数据来源和底层应用的 Portlet API,描述了 Portlet 与门户间的相互作用,Portlet 的生命周期及安全性、用户定制、Portlet 显 示管理等方面的信息,

49、提供了统一的接口定义。基于规范完成的门户成为一个通 用性好,适用性强的系统,可兼容任何符合规范的 Portlet,提高了产品的复用性。Portlet 规范的主要目标如下: 定义 Portlet 的运行环境,即 Portlet 容器;定义 Portlet 的生命周期;定义 Portlet 展示相关的一些标准化参数,如 Portlet 模式,窗口状态等; 定义 Portlet 容器与 Portlet 组件之间进行交互的 API;为 Portlet 组件的临时数据和持久数据提供一种存储机制; 为 Portlet 组件提供访问并包含 Servlet 和 JSP 的机制;为 Portlet 组件提供打包

50、机制,以方便进行部署;允许 Portlet 组件在所有满足 JSR168 规范的门户间的移植;2) JSR286(Portlet 2.0 规范)Portlet 1.0 规范的订立与发布促进和规范了 Java 领域门户技术的发展,IBM、 Oracle 等厂商都开发了符合规范的门户产品。然而,随着门户的深入使用,业界 渐渐发现 1.0 规范的某些不足。由于撰写初期只考虑到了基本的需求,所以按照 1.0 规范实现的门户产品对 Portlet 协作、服务资源访问、Portlet 过滤器等支持不 好。为满足现实需求,各大厂商都在自己的门户中添加了相应的功能模块,这又 引来了标准化问题。为此,JCP 从

51、 2005 年开始制定 Portlet 2.0 规范,新的规范已 于 2008 年正式发布。在 1.0 规范的基础上,2.0 规范着重增加如下一些方面的规定:Portlet 协作机制:引入松耦合的代理事件模型、共享呈现参数以及共享 会话属性等三种不同的协作机制,为使用 Portlet 创建组合应用程序提供了便利。 资源服务:之前 Portlet 都是通过“直接链接到资源”的方式提供资源服 务。该方式虽然对 Portal 服务器的负载压力小,访问效率高,但却无法对资源的 访问进行权限约束。因此,2.0 规范定义了“ResourceURL 链接”的资源服务方 式。该方式通过新引入的 Portlet

52、 链接 ResourceURL 以及对应的 Portlet 接口serveResource 将资源服务纳入到标准的 Portlet 访问流程中,解决了资源访问的 权限约束问题。 Portlet 过滤器:与 Servlet 过滤器类似,在 Portlet 的部署描述文件中定 义后,Portlet 过滤器可以放置在 2.0 规范定义的 Portlet 任何生命周期方法的前面, 对 Portlet 请求进行预处理。2.1.6OncePortal 系统概述OncePortal 是软件研究所软件工程技术研究开发中心研发门户 中间件产品1011。它提供了企业门户的基本运行框架及必需的支撑服务,为 Port

53、let 提供了一个安全的、标准的、可扩展的运行环境。OncePortal 实现了一个 基本的门户系统。它作为一个 Web 应用运行于 Servlet 容器之上,其总体框架如 图 2.2 所示。图 2.2OncePortal 总体框架从上图可知,OncePortal 运行于 J2EE Application Server 之上,其内部的体 系结构大致可以分为三层:底层是 Security,Cache 等基础服务;中间层是服务 调用 API(Service API),提供具体的业务逻辑;上层是接受用户请求的 Portal Server 和管理 Portlet 组件的 Portlet Contain

54、er。Portlet 组件通过 Portlet API 经由 Portlet Container 管理,它们响应 Portal Server 转发的请求,是 OncePortal 向用户 提供业务功能的基本单位。除在 2.1.2 节中描述的门户关键功能以外,OncePortal 还提供了页面整合、Portlet 定制等功能,帮助用户对已有的系统和内容进行整合。这些功能为门户网站开发平台的内容聚合和内容展示等功能提供了基础。2.2联邦门户联邦门户属于第四代门户。本节介绍联邦门户的基本概念,并探讨了联邦门 户的主要功能与特点、应用优势、系统结构、相关规范以及相关产品。2.2.1联邦门户与远程 Po

55、rtlet随着企业门户应用的发展,门户已经成为获取信息,巩固和整合 IT 基础设 施的平台。在过去数年中,于是来自于同一公司的、自主的、分散的多个部门都 部署了自己的门户,但这些门户之间却无法进行内容共享,或者说 Portlet 在不 同门户之间的集成。由于分散独立的门户无法共享内容和协同,形成了“烟囱门 户”。一个门户无法同时集成到其他门户上的应用和内容,或者说是实现跨门户 的交叉访问。门户的扩张使得共享信息更加困难。为了解决这个问题,人们首先想到的办法是通过 Portlet 移植。Portlet 是可以 通过规范在不同门户之间移植了,但这种移植是有限的。首先就是部署 Portlet 的门户

56、不一定愿意让接受移植的门户了解 Portlet 的实现细节,而只想提供一个 服务,返回一个请求结果。此外如果 Portlet 封装的对象包含了本地信息的话, 移植工作也很困难。因此,人们又提出了通过 Web Services 包装应用和内容,然后让其它门户去 调用的方案。这样,部署 Portlet 的门户只需要把 Portlet 包装为 Web Services 并 发布,其他门户就可以通过调用 Web Services,获取 Portlet 的内容和展现。这就是联邦门户的技术原理。通过联邦门户,一个门户能够访问其它门户的 Portlet。这些远程的 Portlet 来自称为生产者(Produ

57、cer)的一个或多个门户服务 器,被收集和组合在被称为消费者(Consumer)的门户应用程序中运行。生产 者和消费者都通过 Web Service 进行沟通。生产者是一个 Web Service,它通过 WSDL 和一组端点完成。每个生产者都 是通过标准的 WSDL 文档来描述的,并且实现了一套接口,为消费者提供了一 组常用操作。提供了一个或者多个 Portlet,使得消费者可以调用 Web Service 获 得远程 Portlet 的内容和展现。消费者是一个 Web Service 客户端,调用生产者提供的 Web Service,并为用 户提供环境来运行一个或多个生产者提供的 Port

58、let,以便得到用户界面标记并提 交用户动作。可以说,生产者负责存放用户界面,消费者则利用 Web Service 收集用户界面并与之交互。图 2.3 对联邦门户的基本组成部分生产者和消费者进行了说明。 生产 者是一个门户,通过 Web Service 提供了 Portlet。消费者通过调用 Web Service 将这些偏远,分散在运行的 Portlet 聚合在一起。如果在一个生产者中的远程 Portlet 发生改变,消费者端的 Portlet 内容和展现能够即时更新。图 2.3联邦门户中的生产者和消费者然而,这样的方式仍然面临着问题,主要有以下几点:1)如何找到一种标准化的方式,使得这种可

59、视的、交互性的、基于用户界 面的 Web Services 能够便捷的对接到相应的消费者门户上?2)如何才能够做到这种 Web Services 的即插即用而无需额外的编程努力?3)如何使得发布 Web Services 的生产者门户能够对 Portlet 和 Web Services进行管理?4)如何找到一种理想化的状态,使得门户中所有的内容和应用都封装为 Web Services,并使得这种 Web Services 的调用的代价最小?这些问题归根结底是联邦门户的标准化问题,为此,人们先后提出了联邦门 户的规范WSRP,它是 Web Services for Remote Portlets

60、 的简称,意思是远程 门户 Web 服务,它目前有 1.0 和 2.0 两个版本。在本论文中,若没有特别说明, 词语“联邦门户”指的是支持 WSRP 规范的联邦门户。在本论文中,词语“远程 Portlet”指的是这样一种 Portlet:它部署在消费者应用中,却使用生产者的 Web Service。根据消费者的实现方式,远程 Portlet 可 以表现为代理 Portlet 和虚拟 Portlet,前者存在真实的 Portlet 实例,后者则不。 在联邦门户环境中,生产者运行真实的 Portlet,消费者运行代理的 Portlet 或虚拟 Portlet。2.2.2 联邦门户的功能和特点1)分

61、布式:联邦门户是一种分布式的门户系统,通过联邦门户,在不同的 业务部门、不同的地方工作的开发团队,可以彼此独立地开发、更新、测试和发 布他们各自的 Portlet。当一个生产者门户中的 Portlet 发生变化时,订阅该 Portlet 的消费者门户会自动更新。这大大降低了门户的维护成本。2)松散耦合:在联邦门户环境中,门户和 Portlet 互不依赖。在大多数情况 下,远程 Portlet 的部署和维护独立于门户,因此提高了门户组件重用性。生产 者发布的 Portlet 可由任意数量的消费者重用,只需最少量的工作且无需进行额 外编码。同时降低了软件组件之间的依赖性,如果某个 Portlet

62、依赖于特定软件 库,则会必须进行依赖性管理,否则对 Portlet 或依赖的库进行更改可能会导致 与现有代码不兼容。而远程 Portlet 是在远程系统上开发、测试、部署和运行的, 所以使用远程 Portlet 的联邦门户没有这种依赖性。3)互操作:远程 Portlet 可以交流和分享数据。提高互操作性:根据定义, 联邦门户是松散耦合且基于标准的,这使得不同门户产品之间的 Portlet 可以进 行互操作。4)即插即用:对于消费者门户来说,远程 Portlet 可以通过订阅得到,而不 需要 Portlet 开发人员进行任何额外的开发和部署活动。在大多数情况下,门户 管理员能够定位远程 Port

63、let 的 Web Services 并将其整合到本地门户中。这些 Web Services 由来自一个或多个生产者,并可由多个消费者重用,消费者和生产者之 间存在的“多对多”关系。5)标准化:联邦门户是建立在开放标准之上的。如 WSRP、SOAP、WSDL、 SAML、UDDI,以及 WS-Security 等。2.2.3 联邦门户的应用优势1)SOA:联邦门户是即插即用面向服务架构(SOA)的真正示例。在大多数情 况下,门户管理员能够定位远程 Portlet 并将其整合到门户中,而无需开发人员 帮助。2)降低门户部署成本:联邦门户最大的好处是,消费者门户在更新远程 Portlet 时无需重新部署。因为真实的 Portlet 部署

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!