参考:http://blog.csdn.net/java619/article/details/1355315
商业产品流行的有:Bea weblogic portal,IBM wepshere portal,Oracle portal。
开源的有:exo,liferay,jetspeed2,pluto(评估他的portlet容器)。
开源的:
Jetspeed2, 目前已经发展到2.1.2版本, 本人使用的比较多。觉得它的整体设计很好,基于Spring容器,很多地方可以随行所欲的去修改和添加功能。但缺点是:UI太丑,需要自己整体修改,需要你对css, html, volicity,以及它自身的portal的实现很清楚。
liferay, 我没在该产品上开发过,只安装后用了用,页面的UI很成熟,修改应该比Jetspeed简单,使用的人很多。
在了解portlet之前有必要先了解portal。在Portlet规范里是这样讲的:“portal是一种web应用,通常用来提供个性化、单次登录、聚集各个信息源的内容,并作为信息系统表现层的宿主。聚集是指将来自各个信息源的内容集成到一个web页面里的活动”。
Portal的功能可以分为三个主要方面:
1. Portlet容器:Portlet容器与servlet容器非常类似,所有的portlet都部署在portlet容器里,portlet容器控制portlet的生命周期并为其提供必要的资源和环境信息。Portlet容器负责初始化和销毁portlets,向portlets传送用户请求并合成响应。
2. 内容聚集:Portlet规范中规定portal的主要工作之一是聚集由各种portlet应用生成的内容,我们将在“如何创建Portal页面”部分对此做进一步讨论。
3. 公共服务:portlet服务器的一个强项是它所提供的一套公共服务。这些服务并不是portlet规范所要求的,但portal的商业实现版本提供了丰富的公共服务以有别于它们的竞争者。在大部分实现中都有望找到的几个公共服务有:
o 单次登录:只需登录portal服务器一次就可以访问所有其它的应用,这意味着你无需再分别登录每一个应用。例如一旦我登录了我的intranet网站,我就能访问mail应用、IM消息应用和其它的intranet应用,不必再分别登录这些应用。
Portal服务器会为你分配一个通行证库。你只需要在mail应用里设定一次用户名和密码,这些信息将以加密的方式存储在通行证库中。在你已登录到intranet网站并要访问mail应用的时候,portal服务器会从通行证库中读取你的通行证替你登录到mail服务器上。你对其它应用的访问也将照此处理。
o个性化:个性化服务的基本实现使用户能从两方面个性化她的页面:第一,用户可以根据她的自身喜好决定标题条的颜色和控制图标。第二,用户可以决定在她的页面上有哪些portlets。例如,如果我是个体育迷,我可能会用一个能提供我钟爱球队最新信息的portlet来取代股票和新闻portlets。
一些在个性化服务方面领先的商业实现版本允许你建立为用户显示什么样的应用所依据的标准(如收入和兴趣)。在这种情况下,可以设定一些像“对任何收入为X的用户显示馈赠商品的portlet”和“对任何收入为X的用户显示打折商品的portlet”这样的商业规则。
此外还有一些公共服务,比如机器翻译,是由portal服务器将portlet生成的内容翻译为用户要求的语言。大部分的商业portal服务器都支持手持设备访问并具有针对不同的浏览终端生成不同内容的能力。
Portlets是什么?
与servlets类似,portlets是部署在容器内用来生成动态内容的web组件。从技术角度讲portlet是一个实现了javax.portlet.Portlet接口的类,它被打包成war文件格式部署到portlet容器里。
Portlets在以下方面与servlets相似:
1. portlets由特定的容器管理。
2. portlets生成动态内容。
3. portlet的生命周期由容器管理。
4. portlets通过请求/响应模式与web客户端交互。
Portlets在以下方面与servlets相异:
1. portlets只能生成标记段,而不是整个文档。
2. portlets没有可供直接访问的URL地址。不过你还是能够让别人通过URL访问到portlet,你可以把包含该portlet的页面的URL发给他。
3. portlets不能随意地生成内容,这是因为portlet生成的内容最终要成为portal页面的一部分。如果portal服务器要求的是html/text类型,那么所有的portlets都应生成html/text类型的内容。再比方说,如果portal服务器要求的是WML类型,那么所有的portlets都应生成WML类型的内容。
portlets还提供了一些附加的功能:
1. 设置参数的持久化存储:portlets提供了一个PortletPreferences对象用来保存用户的设置参数。这些参数被存入一个持久化数据库,这样服务器重启后数据依然有效。开发者不必关心这些数据存储的具体实现机制。
2. 请求处理:portlets提供了更为细粒度的请求处理。对于用户在portlet上动作时向该portlet发出的请求(一种称为活跃期的状态),或者因用户在其它portlet上动作而引发的刷新页面请求,Portal服务器提供了两种不同的回调方法来处理。
3. Portlet模式:portlets用模式的概念来表示用户在做什么。在使用mail应用的时候,你可能会用它来读信、写信或检查信件――这些都是mail应用的预定功能,Portlets通常以VIEW模式提供这些功能。但还有一些活动,像指定刷新时间或(重新)设置用户名和密码,这些活动允许用户定制应用的行为,因此它们用的是EDIT模式。Mail应用的帮助功能用的是HELP模式。
如果仔细想想其实这里面并没有什么新东西,它们反而大部分都是普通的业务需求。Portlet规范的作用在于它提供了一个抽象层,这才是它对所有与之相关的人-最终用户、开发者和管理员-的价值所在。
作为一个开发者,我会将所有与VIEW模式有关的业务逻辑放入doView()方法,将与应用配置有关的业务逻辑放入doEdit()方法,将与帮助有关的逻辑放入doHelp()方法
这就简化了管理员对portlet应用的访问控制管理,因为他只需改变portlet的访问权限就能决定用户能做什么。例如,如果mail应用的一个用户能够在EDIT模式下设定用户名和密码,那么就可以断定他具有EDIT模式访问权限。
不妨考虑这样一种情形:我是一个intranet网站的管理员,我的公司买了一个能显示新闻信息的第三方portlet应用,该应用允许用户指定跟踪新闻更新的URL地址,我想借助它为用户显示公司的内部新闻。另一个需求是我不想让用户通过该应用来跟踪任何其它的新闻信息来源。作为管理员,我可以为所有的用户指定一个用于内部新闻更新的URL地址,同时通过改变portlet应用的部署描述符来取消其它人修改该地址的权限。
由于所有的portlet应用都具有相似的UI界面,因此采用portlets可使网站对最终用户更具吸引力。如果她想阅读任何一个应用的帮助信息,她可以点击帮助按钮;她也知道点击编辑按钮能让她进入应用的配置屏。标准化的用户界面使你的portlet应用更引人。
4. 窗口状态:窗口状态决定了portal页面上留给portlet生成内容的空间。如果点击最大化按钮,portlet将占据整个屏幕,成为用户唯一可用的portlet;而在最小化状态,portlet只显示为标题条。作为开发者应当根据可用空间的大小来定做内容。
5. 用户信息:通常portlets向发出请求的用户提供个性化的内容,为了能更加行之有效,portlets需要访问用户的属性信息,如姓名、email、电话等。Portlet API为此提供了用户属性的概念,开发者能够用标准的方式访问这些属性,并由管理员负责在这些属性与真实的用户信息数据库(通常是LDAP服务器)之间建立映射关系。
分享到:
相关推荐
The dictionary defines a portal as a grand or imposing door or entrance; hence, that picture on the cover. In this book, you will learn why the word portal has become a major buzzword in the world of ...
【用友UAP的Portal开发】是针对企业级Web应用的一种解决方案,旨在提供一个集成了多种功能和服务的统一入口。UAP Portal是基于JSR 286规范,遵循J2EE技术体系,具备强大的系统集成和组装能力。它不仅支持产品展示...
华为外置Portal认证配置手册主要介绍了Portal认证服务器的相关配置,包括Portal的基本概念、环境要求、软件部署、网络需求、配置思路和具体的配置步骤。 首先,我们来了解一下Portal的概念。Portal在英语中是入口的...
Portal 服务器搭建 Portal 认证是指对用户上网流量(即所有穿过防火墙的流量)进行认证,以确保用户身份的安全性。Portal 认证的典型组网由三个基本要素组成:认证客户端、接入设备、Portal 认证/计费服务器。 ...
《NC65portal开发文档》是一份针对NC65平台的开发者手册,旨在为软件工程师提供详尽的指导,帮助他们理解和开发基于NC65portal的应用程序。NC65portal是一个集成了多种功能的Web应用平台,专为满足企业级业务需求而...
### H3C IMC Portal 认证操作手册关键知识点解析 #### 一、Portal认证概述 **Portal认证**,在英语中意为“入口”,在IT领域特指一种通过Web页面来验证用户身份的方式,以此实现对用户网络访问权限的控制。在采用...
标题中的“72341852_STEP7_TIA_Portal_V15_HSP_en_TIAPORTAL15_HSP_V15下载HSP_”暗示了这是一个关于西门子TIA Portal V15 Hotfix Service Package (HSP) 的资源下载链接,主要面向英文用户。描述简单明了,表明这是...
Portal认证是一种网络接入控制机制,它要求用户在访问网络资源之前,必须通过浏览器访问特定的Portal服务器并完成身份验证。这种技术常用于公共场所的Wi-Fi接入,例如酒店、机场和咖啡厅等。当iOS设备连接到支持...
### Portal系统介绍及组成 #### Portal概念解析 Portal在英文中的原意是“入口”,在IT领域特指一种网络认证模式——Portal认证,通常被称为Web认证。这种认证方式通过特定的门户网站来实现用户的身份验证。当用户...
SANGFOR AC v11.8 本地 Portal 服务器搭建与华为 Portal 控制器对接配置指导书 本文档主要讲述了 SANGFOR AC v11.8 本地 Portal 服务器的搭建和华为 Portal 控制器对接的配置指导书。该文档面向针对读者对象是 IT ...
**TIA Portal V13 授权详解** TIA Portal(全称为 Totally Integrated Automation Portal)是西门子(Siemens)推出的一款集成自动化工程软件平台,主要用于工业自动化领域的系统设计、编程、模拟和调试。V13是该...
### 中国移动WLAN业务Portal设备规范v3.0.0 关键知识点解析 #### 一、范围与适用性 **1.1 范围** 本标准旨在为中国移动WLAN业务提供Portal设备的规范,涵盖了设备在网络中的位置、功能要求、流程要求、接口要求...
"卸载 STEP 7 (TIA Portal) 软件" STEP 7 (TIA Portal) 软件是西门子公司开发的PLC编程软件,广泛应用于自动化和工业控制领域。然而,在卸载 STEP 7 (TIA Portal) 软件之前,需要备份项目、库和授权,以免数据丢失...
Portal认证是无线网络中常见的用户认证方式,它要求用户在未认证的状态下只能访问特定的门户网站,这个网站通常被称为Portal页面。当用户想要访问互联网中其他资源时,必须在这个Portal页面上进行认证,认证通过后,...
【创业医院系统Portal无限多开】是指在医院信息管理系统(HIS)中实现门户(Portal)应用程序的无限制同时打开功能。这对于医院信息化管理来说,是一个重要的优化措施,旨在提高工作效率,满足医疗工作者多任务并行...
根据提供的文件信息,我们将深入探讨“TIA PORTAL 最新授权”的相关知识点。 ### TIA Portal 最新授权 #### 一、TIA Portal 概述 TIA (Totally Integrated Automation) Portal 是西门子公司推出的一款集成化工程...
1、TIA Portal Multiuser Engineering TIA允许多个用户同时工作在同一个项目上,增加协作的能力,另外还可以通过委托减少工作时间。 2、TIA Portal Teamcenter Gateway Teamcenter网关让您保存和...
OpenWRT实现Portal认证是一种网络认证方式,它涉及在OpenWRT开源路由器操作系统中配置特定软件来实现用户登录和身份验证。Portal认证通常用于无线网络环境中,使得用户在连接到无线热点时,必须通过一个登录页面输入...
下载链接包含博图V15全套软件,其中包含SIMATIC_PLCSIM_Advanced_V2、TIA_Portal_STEP_7_Pro_WINCC_Adv_V15 TIA_Portal_STEP_7_Pro_WINCC_Pro_V15 .... 下载链接包含博图V15全套软件,其中包含SIMATIC_PLCSIM_...