| |
信息门户是一种web应用,通常用来提供个性化、应用集成、聚集各个信息源的内容,并作为信息系统表现层的宿主。聚集是指将来自各个信息源的内容集成到一个web页面里的活动。
Portal的功能可以分为三个主要方面:
1、Portlet 容器:Portlet容器与servlet容器非常类似,所有的Portlet都部署在Portlet容器里,Portlet容器控制Portlet的生命周期并为其提供必要的资源和环境信息。Portlet容器负责初始化和销毁Portlets,向Portlets传送用户请求并合成响应。
2、内容聚集:Portlet规范中规定Portal的主要工作之一是聚集由各种Portlet应用生成的内容,我们将在“如何创建Portal页面”部分对此做进一步讨论。
3、公共服务:Portlet服务器的一个强项是它所提供的一套公共服务。这些服务并不是Portlet规范所要求的,但Portal的商业实现版本提供了丰富的公共服务以有别于它们的竞争者。
Portlets是部署在容器内用来生成动态内容的web组件。从技术角度讲Portlet是一个实现了javax.portlet.Portlet接口的类,它被打包成war文件格式部署到Portlet容器里。
Portlets还提供了一些附加的功能:
1、设置参数的持久化存储:Portlets提供了一个PortletPreferences对象用来保存用户的设置参数。这些参数被存入一个持久化数据库,这样服务器重启后数据依然有效。开发者不必关心这些数据存储的具体实现机制。
2、请求处理:Portlets提供了更为细粒度的请求处理。对于用户在Portlet上动作时向该Portlet发出的请求(一种称为活跃期的状态),或者因用户在其它Portlet上动作而引发的刷新页面请求,Portal服务器提供了两种不同的回调方法来处理。
3、Portlet模式:Portlets用模式的概念来表示用户在做什么。在使用mail应用的时候,你可能会用它来读信、写信或检查信件――这些都是mail应用的预定功能,Portlets通常以VIEW模式提供这些功能。但还有一些活动,像指定刷新时间或(重新)设置用户名和密码,这些活动允许用户定制应用的行为,因此它们用的是EDIT模式。Mail应用的帮助功能用的是HELP模式。
易建工程项目管理软件可集成Liferay和Jboss Portal构建信息门户解决方案。
Liferay
Liferay除了提供Portlet技术实现以外,Liferay是信息门户中的信息集中器,能够把信息集中起来并且很容易地提供给用户。Liferay采用完整的Java EE技术体系,使用了Web、EJB以及JMS等技术,特别是其前台界面部分使用Struts框架技术,基于XML的portlet配置文件可以自由地动态扩展,使用了Web Services来支持一些远程信息的获取,使用Apahce Lucene实现全文检索功能。这些技术应用与易建工程项目管理软件所采用的技术体系是完全一致的。
Liferay设计成为部署符合(JSP168)Portlet 应用接口的Portlet。很多有用的Portlet(比如邮件、Liferay文档、日立、公告版和其他)已经跟Portal绑定,而且可以作为添加自定义的Portlet的范例。
所有的HTTP和WAP请求都通过MainServlet响应,MailServlet扩展了Struts基类ActionServlet。MainServlet处理所有的请求,使得每个请求都路由到合适的PortletAction。Portal的布局信息通过定制的模板管理。
Liferay不再依赖EBJ,可以部署在标准的servlet容器中。所有的业务逻辑都集中在可以被Spring查找和实例化的POJO实现中。这些实现都可以通过Spring的AOP和IOC修改或者强化。
所有的数据都使用Hibernate持久化,供POJO实现调用。 Liferay原来使用CMP技术构建持久化, 因为Hibernate优秀的速度和弹性而转换为Hibernate。 Liferay不依赖特定的数据库,可以在多种流行的数据库上运行。
Liferay使用JAAS Web安全机制,当用户登录的时候,他们的信息会被传送到相应的Servlet和EJB节点。远程的Session EJB可以利用这一点,在EJB层级确认安全性和授权,防止它在其他地方被复制。本地Session EJB向其他Session EJB暴露业务逻辑,不需要明确的确认安全性,因为它们不会被远程调用。信息也会被传送到作为远程Session EJB基础类的POJO实现上。
Jboss Portal
JBoss Portal提供了一个开源符合标准的门户平台,可以用其搭建/布局一个门户网站的web界面,发布和管理内容以及定制它的用户体验。JBoss Portal最新版本中在个性化设置,身份验证,工作流都进行重大更进。此外还集成了Google Gadgets,以提高用户工作效率。Jboss Portal具有以下几个方面的功能:
1、Portal和Portal容器
■ 能够在一个Portal容器中运行多个Portal实例
■ Portal实例可以使用在集群环境中
■ 可以为每个Portlet使用国际化的资源文件
■ 插件式服务.如: 由servlet容器和JAAS执行身份验证所以可以交换身份验证配置.默认得用户或用户组域使用一个数据库,所以通过交换自定义域可以切换用户或用户组
■ 基于页面的架构:允许在每一个页面基础上对Portlets的分段
2、用户和用户组功能
■ 用户注册
■ 用户登陆
■ 管理员可以建立或编辑用户配置文件
■ 管理员可以建立或编辑角色
■ 管理员可以定义用户的角色
3、内容服务
■ 使用友好搜索引擎(Search-engine-friendly)URLS,不再使用Portal的URLS
■ 基于简单urls的服务二进制编码(Serve binaries)
4、内容管理
■ 可以在系统上上传字节内容到任意目录下,文件大小最大限制可以配置
■ 文件目录支持:创建,移动,删除和拷贝整个目录树
■ 文件功能:创建,移动,拷贝和删除文件
■ 版本支持:所有新文件建立的时候默认支持版本记录.管理员可以容易的改变到以前的版本.
■ 自定义错误页面:错误页面可以修改以适应你网站的需要.
■ 嵌入式目录浏览器:当拷贝,移动,删除或创建文件的时候,管理员可以简单的定位目录树来查找想操作的目录集合.
■ 简便使用的架构:所有对文件和文件夹的操作都可以只使用鼠标完成
■ 全特性的HTML编辑器:HTML编辑器包括了可见即所得(WYWIWYG)模式,功能性预览和HTML资源编辑模式.HTML命令支持表格、字体、缩放、图片和URL链接、flash动画支持、特殊符号和数字列表等,可见即所得编辑器显示了当前的Portal风格表用来简便的选择风格类别
■ 全网页日志支持:允许管理员使用可以登陆网页日志存储器的桌面编辑器
■ 缓存和聚合内容:缓存无效引擎通过所有的节点来传播内容的变化
5、用户消息广播
■ 能够发送新主题
■ 能够接受一个主题
■ 即时回复特性,实现单击回复
■ 使用洪水控制(Flood control)特性防止重复型攻击
6、管理员消息公告
■ 建立一个包含论坛的类别
■ 建立一个论坛并分配到特殊的类别中
■ 编辑,移动,删除论坛
■ 类别和论坛的记录器 |
|