引子 案例介绍
本书后面主要章节将围绕Liferay这个案例(应用系统)展开,包括Web功能测试、性能测试和单元测试等。Liferay的安装包和文档可以从其官方网站http://www.liferay.com下载。
1. LifeRay功能简介
Liferay Portal是一套相当成熟的、功能强大的企业级集成应用系统。Liferay Portal作为一个开源的Portal产品,提供了对多个独立系统的内容集成,可以帮助一个企业各个组织(社区)实现更有效的合作。图0-1就是用Liferay自建网站的首页。
图0-1 Liferay自建网站的首页
Liferay Portal代表了完整的J2EE应用,使用了Web、Struts、Spring、Hibernate、jBPM、jQuery JavaScript框架及JMS等技术,遵循Portlet API JSR168/127/170、AJAX、iCalendar &Microformat、OpenSearch等各项标准,也遵守开放的Web服务标准,如RMI、WSRP、JSON、REST等,而且LifeRay是JSR-286(Portlet 2.0)和JSF-314(JSF 2.0)标准委员会的成员。基于XML的portlet配置文件可以自由地动态扩展,使用Web Services来支持。
LifeRay Portal由Portal服务器、Portlet容器和Portlet构成。
● Portal服务器是承载Portlet容器、支持Portlet呈现的Web服务器,可以无缝集成多种数据源(如数据库、各类文档、Web页面等),支持单一登录(Single sign-on)、权限控制、内容管理、信息发布和文件管理等功能,包括采用多种缓存机制、ACL/SSL/LDAP安全技术等。
● Portlet容器是普通Web Servlet容器的扩展,提供Portlet执行的环境,一个Portal容器接收到来自Portal的请求后,将请求传递给存在Portal容器的Portlet执行。Portlet容器包含很多Portlet并管理它们的生命周期(即装载、实例化和初始化),保存Portlet的定制信息。
● Portlet是Portal中最重要的组件,负责信息内容的呈现。通过自定义Portlet,用户很容易定义个性化的Portal页面。
LifeRay的功能也很强大,不仅可以支持标准Portal所支持的功能,而且支持国际化(I18N)和包括中文在内的多种语言、支持各种远程信息的获取,可使用Apahce Lucene实现全文检索功能,并已有大量的应用组件,如wiki、RSS、博客、工作流、投票和许多工具等,如图0-2所示。
图0-2 LifeRay各种应用组件列表
2. 环境设置
LifeRay能够在主流的J2EE应用服务器上运行,如Tomcat、Jetty、Glassfish、JBoss+Jetty/Tomcat、JOnAS+Jetty/Tomcat等,支持主流的数据库,如PostgreSQL、MySQL和Oracle等。
1) 安装
Liferay的安装十分容易,建议下载Bundled with Tomcat 6.0:
http://downloads.sourceforge.net/lportal/liferay-portal-tomcat-6.0-5.1.1.zip
下载并解压后,就可直接运行。它会使用自带的HSQL数据库,其中包括一些初始数据和演示数据。因为是用于测试,我们无须更改数据库和用Liferay站点提供的SQL来初始化数据库。数据源由conf\Catalina\localhost中的ROOT.xml设置。
此前应安装和配置Java环境。可以去http://java.sun.com/javase/downloads/index.jsp下载相应的JRE或JDK软件包进行安装。Java环境的配置,见本书2.1.1节中的内容。
Liferay安装成功后,运行bin目录下的startup.bat,启动liferay系统。打开浏览器输入http://localhost:8080,页面会自动跳到http://localhost:8080/web/guest/home,出现如图0-3所示的界面,说明安装成功。右上角的“Welcome”按钮是显示常用菜单的地方,包括“登入、登出、增加应用、处理页、布局模板、我的地方”等功能的使用。
图0-3 LifeRay安装后首次启动的界面
2) 设置
Liferay的可配置性极强,有两种办法:
● 通过webapps\ROOT\WEB-INF\lib\portal-impl.jar中的portal.properties来配置,可以建立一个新文件portal-ext.properties,它会覆盖portal.properties中的配置。
● 用test@liferay.com(口令是test)登录系统,通过点击“language”中的我国国旗图标设置中文界面,进入企业admin Portlet来配置,包括增加组织、用户群和角色等,如图0-4所示。
图0-4 企业admin Portlet
在设置之前,最好了解LifeRay中组织、社区、用户组、用户和角色等之间的关系。组织和社区是并列的,一个社区中会由不同组织的用户来参加,一个组织中某些成员会参加不同的社区,这和现实社会是一致的。每个用户可能会属于一个或多个用户组,被赋予一个或多个角色。角色很多,包括总管理员、社区管理员、社区所有者、社区成员、组织所有者、组织成员和一般用户等。它们之间的关系如图0-5所示。
图0-5 LifeRay组织、社区、用户组、用户和角色等之间的关系
在一般设置中,可以设定语言和时区,如图0-6所示。而在“认证”项,可以设置是否限制登录、开始账号等,以及设置LDAP、CAS、NTLM、OpenIDden等安全加密选项。
图0-6 企业admin中的设置功能
除了企业admin,还有另外两个Portlet——“管理者”和“公共”。管理者Portlet用来管理Liferay Portal系统,监测系统运行情况,清理系统缓冲区及关闭系统等。而“公共”应该翻译为“社区”,是用来创建和管理不同社区的。
3. 使用
注册一个用户给自己用,使用起来简单,可以去“我的地方”,即“公共页面”和私有页面。所以,最常用的功能是:
● 增加页面。
● “处理页面”——对页面进行配置。
● 在页面中增加应用。
用户登录后,在网页标签栏右端出现一个“增加页面”的标签,点击并输入一个网页名字,按“存储”按钮即建立了新网页。刚建成的新网页是空白的,须要配置网页类型和外观属性,这就是“处理页面”,如图0-7所示,然后在页面中增加应用。
图0-7 处理页面的界面
对网页进行配置处理,配置网页的类型、外观与风格(Look and Feel)、访问权限、子网页和网页排列顺序等。在外观与风格中的“规则浏览器”是指普通电脑的浏览器,因为Liferay Portal可以向手机和PDA等移动上网设备提供服务。Liferay Portal的网页定义了6种类型。
● Portlet:网页内容由Portlet组成。
● Panel:将网页划分成左右两版,左侧显示选定的Portlet应用列表(树形菜单),右侧显示左侧列表中指定的一个Portlet应用。
● Embedded:本网页内嵌入指定网址(由URL栏指定)的网页。
● URL:脱离当前网站,将本网页直接跳转到指定的网址上。
● Link to Page:将本网页链接到本网站的某个网页上。在“Link to Page”栏选择要链接的网页。
● Article:本网页显示指定的期刊文章内容,由Article ID栏输入的期刊文章的ID号决定。