哈尔滨理工大学网络中心学术交流会
Portal技术简介
主讲人:高加旺
2006-06-21
1
概要
本次演讲通过对portal的定义功能特点出发介绍portal的架构和开发的相
关知识,portal是个很大很广很深的技术,本次讲演只是让大家认识
并关注portal技术。
希望通过本演讲稿达到一下目的:
1)使大家对portal有一个清晰的认识。
2)提供些开发portal的一些整体思路和方法。
2
主要内容
Portal引入
Portal定义
Portal功能
Portlet介绍
Portal开发简介
3
Portal的引入
几个网站
1.http://my.msn.com(微软)
2. http://cn.my.yahoo.com
3.http://www.live.com/ (微软)
4. http://www.google.com/ig
5. Netvibes ( http://www.netvibes.com/ )
国内版本:http://www.okrss.com/
4
portal定义
在Portlet规范JSR (Java Specification Request) 168中是这样描述
Portal的,“Portal是一种Web应用,通常用来提供个性化、单点登录、
聚集各个信息源的内容,并作为信息系统表现层的宿主。聚集是指将
来自各个信息源的内容集成到一个Web页面里的活动”。
(另)在有效的网络的环境下,把各种应用系统资源、数据资源、信息
资源统一集成到一个平台之下,根据每个用户使用特点和角色的不同,
形成个性化的应用界面,并通过对事件和消息的处理传输把用户有机
地联系在一起。
5
Portal定义(续)
Portal现在已经成为企业最关注的领域之一,是实现企业整合的第一
步。其重要价值在于它是企业现有投资与新投资的集成节点,使用户
能够与人、内容、应用和流程进行个性化的、安全的、单点式的互动
交流。
Portal技术强调以用户为中心,重视工作流及整体工作效能。通
过与应用无关的图形化界面映射以知识为中心的工作流,提供单点集
成界面,实现信息的集中化访问。Portal将“自动化孤岛”
(IslandofAutomation)和“信息化孤岛”(IslandofInformation)联
接起来,创建一个提供支持信息访问、传递,以及跨组织工作的集成
化商务环境。
6
Portal定义(续)
现有Portal技术可概括为以下四种:
1)企业信息门户(EIP,EnterpriseInformationPortal)
依据主题将大量的内容进行组织,并利用这些信息将用户连接起来。
2)协作门户(CP,CollaborativePortal)
为用户团队提供协同工具,建立虚拟项目工作区并辅助团队协同工
作。
3)专业门户(EP,ExpertisePortals)
将用户依其能力、专业知识及对信息的需求进行连接。
4)知识门户(KP,KnowledgePortals)
7
Portal定义(续)
通常所说的Portal,基本都是EIP的概念。EIP最初是由美林公司
(MerrillLynch)的C.Shilakes和JulieTylman于1998年11月16日提出
的。他们在发表的研究报告中把企业信息化门户定义为在企业内部和
企业间管理、分析及发布信息的软件系统(如商务智能(BI,
BusinessIntelligence)、内容管理(CM,ContentManagement)、
数据仓库(DataWarehouse&Mart)及数据管理(DM,
DataManagement)等)的融合体,Portal使得企业能够充分利用内、
外部的信息,为用户提供一个面向商务决策的定制信息获取入口。
8
Portal功能
1) 个性化
个性化服务的基本实现使用户能从两个方面个性化他的页面:第一,
页面的个性化,用户用户根据自身喜好决定标题条的颜色和图标;第
二,内容的个性化,用户可以决定他的页面上有哪些内容(portlets).
另外,Portal也支持自定义业务规则来满足特定的用户需求”。
信息门户的数据和应用可以根据每一个人的要求来设置和提供,订制
出个性化的应用门户。每个人根据自身角色不同和安全级别的不同,
都可以看到不同的信息,同时增强了对顾客的亲和力和吸引力。
9
Portal功能:个性化功能
OA 审批 邮件 应用管理
信息网站 …
信息资源
10
Portal功能(续)
2) 单点登录
只需登录Portal服务器一次就可以访问所有其它的应用,这意味
着你无需再分别登录每一个应用。例如一旦我登录了我的intranet网站,
我就能访问mail应用、IM消息应用和其它的intranet应用,不必再分别
登录这些应用。Portal服务器会为你分配一个通行证库。你只需要在
mail应用 里设定一次用户名和密码,这些信息将以加密的方式存储在
通行证库中。在你已登录到intranet网站并要访问mail应用的时候,
portal服务器会从通行证库中读取你的通行证替你登录到mail服务器上。
你对其它应用的访问也将照此处理。
11
单点登录功能
信息门户
OA 审批 信息网
站
邮件
… 应用管理
12
Portal功能:权限控制功能
信息
数据
教师 •授权管理
•身份认证
单点登陆
应用
单点登陆
学生 权限管理员
单点登陆
其他人员 13
Portal功能(续)
3) 内容聚集
内容整合:
内容管理
个性化的、集成的信息展示
信息的集成搜索:用户需要在门户中搜集整理各个应用系统所
包含的有关某一议题相关的信息
信息的监控:主动式信息获取,信息过滤
14
Portal功能(续)
3) 内容聚集
数据整合:
收集指定的业务数据
集成数据挖掘或数据分析系统
提供经过分析整理的数据
以各种文档或报表的形式提交给应用系统及用户
15
Portal功能(续)
3) 内容聚集
应用整合:
跨应用系统工作流程整合
应用间数据共享
应用间协作
用户间协作
16
Portal组成
Portal 的组成可以分为三部分
(1) Portal Server
(2) Portlet Container
(3) Portlet
17
Portal组成(续)
1) Portal Server 的定义是
一个 Portal(门户网站)就是指一个 Web-based 的系统,通常都会提供
个人化设置、单一登陆、以及由各种不同来源或不同网站取得各式各样
的信息,并且将这些信息放在网页之中组合而成的呈现平台,门户网站
会有精巧的个人化设置去提供定制的网页,当不同等级的使用者来浏览
该页面将获得不同的信息内容。
18
Portal组成(续)
2) Portlet Container 的定义是
portlet container 是提供 portlets 执行的环境,包含了许多 portlets
并且管理他们的生命周期,他也会永远保存着 portlets 的喜好设置,
一个 portlet container 接收到来自 portal 的请求后,接着将这个请
求传递给存在 container 的 portlet 执行。portlet container 没有义
务去组合 portlets 产生的信息內容,这个工作必须由 portal 来处
理。portal 和 portlet container 可以放在一起视为同一个系统的组
件,或者分开成为两个独立的组件。
19
Portal组成(续)
3) Portlet 的定义是
一个 Portlet 是以 Java 技术为技术的 Web 组件,由 Portlet
Container 所管理,专门处理客户的 request 以及产生各种动态的
信息内容。Portlets 为可插式 ( pluggable ) 的客户界面组件,提供
呈现层成为一个信息系统。这些由 portlet 产生的内容也被称为片
段 (fragment),而片段是具有一些规则的Markup( HTML、
XHTML、WML ),而且可以和其他的片段组合而成一个复杂的文
件。而 Portlet 中的内容正常来说是与其他 Portlet 的内容聚合而
成为一个 Portal 网页。而 Portlet 的生命周期是被 Portlet
Container 所管理控制的。客户端和 portlets 的互动是由 portal 通
过典型的 request/response 方式实现,正常来说,客户会和
portlets 所产生的内容互动,举例来说,根据下一步的连接或者是
确认送出的表单,结果 portal 将会接收到 portlet 的动作,将这个
处理状况转向到目标 portlet。这些 portlet 内容的产生可能会因为
不同的使用者而有不同的变化,完全是根据客户对于这个 portlet
的设置。
20
Portlet
21
portlet
每个portlet页面由一个或多个portlet窗口组成,每个
portlet窗口又分为两部分:一个是外观,它决定了
portlet窗口的标题条、控制和边界的样式;另一个是
portlet段,它由portlet应用填充。Portal服务器决定了
portal页面的整体观感,像标识、标题条颜色、控制
图标等。通过修改几个JSP和css模板文件就可以改
变portal的整个观感。
22
portal开发简介
1)portal架构
23
portal开发(续)
1)portal技术架构的选择
应用服务器平台
JAVA
.NET
开源 vs 商业
商业产品
BEA WebLogic Portal Server
IBM Webspere Portal Server
Oracle Portal Server
Sun ONE portal Server
Microsoft SharePoint Portal Server
24
portal开发(续)
开源门户
Liferay
JetSpeed
eXo
pluto
25
portal开发(续)
关于pluto
2003年10月JSR168规范1.0正式公布后,Jakarta Apache就开
始实施Pluto计划(冥王星计划),最终开发出该规范的一个参
考实现(Reference Implementation),即Pluto。Pluto的
1.0.1-rc2版与2004年12月发布。Pluto实现基于 JSR168的一个
Portlet Container,相当于为开发者提供了一个运行portlets的
工作平台。Pluto本身也提供了一个简单的Portal模块,该模块
仅仅是为了满足Portlet容器和JSR 168的需要而写的,因而显
得非常简单,提供的实用的Portlet也非常少。从某种意义上说
Pluto更像是一个Portlet Container,尽管Pluto作为一个完整的
Portal应用还非常欠缺。但不少有影响力Portal项目使用Pluto作
为Portlet Container。这些项目包括:Jetspeed 、Cocoon
uPortal 、Jahia等。由此可见Pluto的重要性。从开发者和学习
者的角度看,Pluto的意义还在于为开发者和学习者提供了一个
深入了解Portlet Container的简洁的参考实例。
(可参考pluto中文网 26
站:http://people.apache.org/~zheng/pluto/chinese/index.html)
portal开发(续)
使用 Apache Pluto 构建和测试 JSR 168 兼容的 portlets
参考:http://www-128.ibm.com/developerworks/cn/java/j-pluto/
27
搜集的portal方案演示
中南大学网络中心的校园门户建设
28
结束语
Portal开发还有许多细节,需要我们在开发过程
中不断学习,以加深理解.希望我的讲演能给大
家一点点启示!
谢谢大家!
29