尝颈蹿别谤补测环境搭建
- 1. Liferay 5.2.3 开发环境搭建
编写人: recky 版本 1.1
邮箱: 19968541@ 日期 2010-03-04
目录
Liferay 5.2.3 开发环境搭建...........................................................................................1
1.对于 Liferay.................................................................................................................3
2.准备工作.....................................................................................................................5
2.1 下载 Liferay 5.2.3..............................................................................................5
2.2 开发工具...........................................................................................................5
3.环境配置.....................................................................................................................5
3.1 JDK 配置............................................................................................................5
3.2 ANT 配置...........................................................................................................6
3.3 Myeclipse 配置..................................................................................................6
4.部署 Liferay 源码.........................................................................................................7
4.1 建立目录结构...................................................................................................7
4.2 导入 Liferay 源码...............................................................................................8
Recky 19968541@
- 2. 4.3 修改配置文件.................................................................................................12
4.3.1 新增 release.${username}.properties 扩展环境配置文件 ................12
4.3.2 新增 app.server. ${username}.properties 服务器配置文件................13
4.3.3 修改 build.xml 文件..............................................................................14
4.4 编译生成 Ext 扩展工程..................................................................................15
4.4.1 打开 ant 视图........................................................................................15
4.4.2 添加 build 文件.....................................................................................16
4.4.3 执行 build 文件.....................................................................................17
4.5 为什么要生成扩展工程.................................................................................19
5.部署 ext 扩展工程....................................................................................................20
5.1 导入 ext 工程..................................................................................................20
5.2 创建数据库.....................................................................................................21
5.3 修改配置文件.................................................................................................21
5.3.1Liferay 门户显示语言设置....................................................................21
5.3.2 修改 tomcat 的 catalina.properties 配置..............................................22
5.3.3Tomcat 引入 ROOT.xml 文件..................................................................22
5.3.4copy 数据库驱动包...............................................................................23
5.3.5 修改 ext-spring.xml 文件......................................................................24
5.3.6 修改 portal-ext.properties 文件............................................................24
5.3.7Tomcat 引入 jaas.config 文件................................................................24
5.3.8 修改 Myeclipse 启动 tomcat 配置........................................................25
5.3.9 修改 Tomcat 的 server.xml 文件...........................................................26
Recky 19968541@
- 3. 5.3.10 修改 Tomcat 的 catalina.bat 文件.......................................................26
5.4 发布 ext 工程..................................................................................................27
5.5 启动 Liferay 门户.............................................................................................28
6.二次开发准备...........................................................................................................29
1. 对于 Liferay
Liferay 是一个完整的门户解决方案,基于 J2EE 的应用,使用了 EJB 以及
JMS 等技术,前台界面部分使用 Struts MVC 框架,基于 XML 的 portlet 配置文件
可以自由地动态扩展,使用了 Web 服务来支持一些远程信息的获取,使用
Lucene 实现全文检索功能。
(Lucene 是一套用于全文检索和搜寻的开源程式库,由 Apache 软件基金会支
持和提供。Lucene 提供了一个简单强大的应用程式接口,能够做全文索引和搜寻,
在 Java 开发环境里 Lucene 是一个成熟的免费开放源代码工具 ; 就其本身而论,
Lucene 是现在并且是这几年,最受欢迎的免费 java 资讯检索程式库。人们经常提
到资讯检索程式库,就像是搜寻引擎,但是不应该将资讯检索程式库与网搜索
引擎相混淆。)
主要特点如下:
1、提供单一登陆接口,多认证模式(LDAP 或 SQL);
Recky 19968541@
- 4. 2、管理员能通过用户界面轻松管理用户,组,角色;
3、用户可以根据需要定制个性化的门户布局;
4、能够在主流的 J2EE 应用服务器上运行;
5、支持主流的数据库;
6、使用了第三方的开源项目,如 Hibernate, Lucene, Struts;
7、支持包括中文在内的多种语言;
8、采用最先进的技术 Java, EJB, JMS, SOAP, XML;
9、提供扩展模式下开发;
10、提供插件模式下开发;
11、多数据库支持;
这里我们就是利用 Liferay 源码通过 Ant 发布 Liferay 扩展包进行 Portal 项目
的发布和开发工作。
Recky 19968541@
- 5. 2. 准备工作
2.1 下载 Liferay 5.2.3
Liferay 源码包 liferay-portal-src-5.2.3.zip
Oracle 数据文件 liferay-portal-sql-oracle-10-5.2.3.dmp
( 下 载 地 址 : http://sourceforge.net/project/showfiles.php?
group_id=49260)
2.2 开发工具
JDK 1.6 以上;
Ant 1.7 以上;
Tomcat 6.0 以上;
Myeclipse 5.1 以上;
3. 环境配置
3.1 JDK 配置
(1)JAVA_HOME:JDK 的安装目录
Recky 19968541@
- 6. (2)PATH:把%JAVA_HOME%bin 目录加到 path 变量
(检查 JDK 是否安装正确,通过“JAVA –version”命令来判断。同样下边
的 ant 也是同样的方式进行检查“ANT -version”)
3.2 ANT 配置
(1)ANT_HOME:ANT 的安装目录
(2)PATH:把%ANT_HOME%bin 目录加到 path 变量
3.3 Myeclipse 配置
(1)设置 Myeclipse 的 JDK
Myeclipse 的 JDK 采用上面安装过的 JDK1.6
Recky 19968541@
- 7. (2)设置字符编码
字符编码统一采用 UTF-8
(3)Tomcat Server 选 择 6.X , 目 录 为 Tomcat 的 目 录 , JDK 采 用 上 面 安 装 过 的
JDK1.6,
在后面的“部署 ext 扩展工程”会详细说明。
4. 部署 Liferay 源码
4.1 建立目录结构
新建一个工作空间目录 Liferay ,然后在 Liferay 目录中新建两个目录;一个
是 service 目录,并将 Tomcat 复制进去;再新建一个 portal 目录,将 liferay-
portal-src-5.2.3.zip 压 缩 包 中 的 源 码 文 件 解 压 到 该 目 录 。 我 的 工 作 空 间 是
D:programLiferay。
如图所示目录结构:
Recky 19968541@
- 8. 4.2 导入 Liferay 源码
( 1) 切换工作空间
启动 Myeclipse,切换到刚才新建的 Liferay 工作空间中去。
操作方法:选择菜单 File → Switch Workspace → Other ,选择 Liferay 目录,点
击确认完成操作。
Recky 19968541@
- 9. ( 2) Import 源码
选择菜单: File →Import;
在弹出窗口中,选中“Existing Projects into Workspace”
点击“NEXT”,进入到源码文件目录选择窗口。在“ Select root directory”中选择
前边新建好的存放 Liferay 源文件目录 portal。
Recky 19968541@
- 12. 4.3 修改配置文件
4.3.1 新增 release.${username}.properties 扩展环境配置文件
进入 D:programLiferayportal 目录,你会看到 release.properties 配置文件。
按照 Liferay 官方的说法,该文件不能修改,但需要在同目录下创建一个
release.${username}.properties 文 件 , 它 是 release.properties 的 扩 展 文 件 ,
release.${username}.properties 中的属性配置会覆盖 release.properties 中的属性。
${username}是计算机登录的用户名,官方配置文档提供一个查看用户名的
方法:cmd?输入 set。
如 图 中 标 记 所 示 , 我 的 计 算 机 用 户 名 为 recky , 那 么 我 们 就 要 创 建
release.recky.properties 文件,然后添加如下内容:
Recky 19968541@
- 13. ##lp.eclipse.dir tells Liferay where you installed Eclipse.
##lp.ext.dir tells Liferay where to create the EXT environment.
## Extension Environment
##
lp.ext.dir=D:/program/Liferay/ext
##
## Eclipse
##
##lp.eclipse.dir=
lp.eclipse.project.name=ext
##
## AntInstaller
##
#ant.installer.dir=D:/apache-ant-1.8.0
说明:lp.ext.dir 指向为扩展环境目录,这个目录设定好了之后,通过 ant 自
动生成一系列扩展文件。
lp.eclipse.dir 为 eclipse 安装目录,这里可以缺省。
lp.eclipse.project.name 扩展项目名称,这个好像可以缺省。
ant.installer.dir 为 ANT 安装目录。
4.3.2 新增 app.server. ${username}.properties 服务器配置文件
在 D:programLiferayportal 目录,你会看到 app.server.properties 配置文件。
这个是自定义服务器配置脚本文件。这里我们要在同目录创建 app.server. $
{username}.properties 文件,用你的计算机登录用户名替换${username}。
新建文件 app.server.recky.properties,并添加以下内容:
app.server.type=tomcat
app.server.tomcat.dir=D:/program/Liferay/service/apache-tomcat-6.0.24
Recky 19968541@
- 14. ##app.server.type tells Liferay which server it will deploy to
##app.server.tomcat.dir tells Liferay the location of Tomcat
app.server.type
说明: 指定服务器类型
app.server.tomcat.dir 指定 Tomcat 安装目录
4.3.3 修改 build.xml 文件
修改下面的操作
找到
<copy todir="${lp.ext.dir}" preservelastmodified="true">
<fileset dir="." includes="app.server.properties" />
添加一个如下:
<fileset dir="." includes="app.server.recky.properties"/>
在 Liferay 官方文档中是没有此操作的,那为什么这样做呢?在官方文档中
是这样说明的:新增 release.${username}.properties 文件之后,通过 ant 命令创
建扩展环境。下一步才是创建 app.server. ${username}.properties 文件(它在前边
指 定 的 扩 展 文 件 夹 根 目 录 ) 。 原 build.xml 文 件 执 行 时 是 不 拷 贝 你 新 建 的
app.server. ${username}.properties 文件到扩展环境的,所以这里我们要加上这段
代码。这样,执行 build 文件创建扩展文件的同时也将对应的自定义服务器配置
文件 copy 到扩展环境中。
Recky 19968541@
- 15. 4.4 编译生成 Ext 扩展工程
4.4.1 打开 ant 视图
选择菜单 window → show view → Other
弹出选择框,选中 ant,点击 OK 打开 ant 视图
Recky 19968541@
- 16. 4.4.2 添加 build 文件
点击 ant 视图工具栏中的添加 build 文件按钮 ,打开选择页面如下图,展
开 portal 项目文件夹,选中 build.xml,点击 ok 完成添加。
Recky 19968541@
- 17. 4.4.3 执行 build 文件
右键单击刚才添加 ant 任务 portal,选择菜单 Run As → Open External
打开外部工具界面:
在执行任务之前配置 JRE 和 JVM 参数
JRE 使用前边安装好的 JDK1.6 ,在 VM argument 中输入如下参数以加大 ant
运行内存:-Xms256M -Xmx512M -XX:PermSize=256M -XX:MaxPermSize=512M。
Recky 19968541@
- 18. 配置完成之后,点击 Apply。然后切换到 Targets 任务对象标签,依次选择
clean start build-ext 任务,如图:
点击 order 按钮,配置选中任务的执行顺序。确保按 clean start build-ext 的顺序:
Recky 19968541@
- 19. 点击“翱碍”,回到刚才的页面上,点击“搁耻苍”运行任务。
提示:在 ant 视图中双击任务名称即可运行。选中某个任务,然后单击 ant
视图工具栏中的 运行按钮也可执行该任务。
Myeclipse 在执行 ant 任务时,控制台会打印出任务执行的日志信息,任务
D:/program/Liferay/ext
成功执行完毕之后,在 目录下会生成一系列文件和目
录。这样 ext 扩展工程生成完毕。
4.5 为什么要生成扩展工程
开发者为了把自己开发的客户化代码和 Liferay 源代码分离开。Liferay 推荐开
发者在 EXT 环境下开发,因为 Liferay 修复 bugs 升级最新版本,这样方便了和新
版本的 Liferay 同步。 本质上,EXT 环境是建立在 Liferay 源代码之上的一层结构。
在 EXT 环境中,源代码封装在 JAR 文件中。当你在 EXT 环境中执行 build 时,你
会创建更多的 JAR 文件。
Recky 19968541@
- 20. 为了方便进行自己的修改和定制开发,同时又能与 Liferay 的更新保持兼容,
我们使用单独的目录来放置自己的修改,这样在 Liferay 发布新版本时,可以直
接 升 级 Liferay 部 署 , 而 不 会 与 我 们 的 修 改 相 冲 突 。 这 里 使 用
D:programLiferayext
目录来放置所有的扩展(包括 JSP、class 文件及依赖库
等)。
5. 部署 ext 扩展工程
5.1 导入 ext 工程
D:
方法同“导入 Liferay 源码”,在 Myeclipse 中导入 ext 工程,目录选择“
programLiferayext
”。目录结构如下:
Recky 19968541@
- 21. 5.2 创建数据库
网上能够找到的相关文档都是基于 mysql 的,自己的机器上是 oracle 10g ,
而且 Liferay 支持多种数据库,并且修改相应的数据库连接配置也不复杂,于是
就采用 oracle 数据库了。
使用 dba 用户登录 oracle 服务器,新建 LPORTAL 用户,密码同用户名。然后
登出,使用 LPORTAL 用户登录,利用 plsql 工具或者 Imp 命令导入 liferay-portal-
sql-oracle-10-5.2.3.dmp 数据库脚本文件,完成数据库的创建。
5.3 修改配置文件
5.3.1 Liferay 门户显示语言设置
修改 portal-ext.properties,添加如下内容
translator.default.languages=zh_CN
修改 system-ext.properties,添加以下内容
user.country=CN
user.language=zh_CN
user.timezone=GMT+8
两个文件在 ext/ext-impl/src 目录中,修改以上两个配置文件主要目的是让
Liferay 门户显示语言为中文简体。
Recky 19968541@
- 22. 5.3.2 修改 tomcat 的 catalina.properties 配置
修改 catalina.properties,替换以下内容:
common.loader=${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/lib/ext,$
{catalina.home}/lib/ext/*.jar,${catalina.home}/common,${catalina.home}/common/*.jar,$
{catalina.home}/common/endorsed,${catalina.home}/common/endorsed/*.jar,$
{catalina.home}/common/lib,${catalina.home}/common/lib/*.jar,$
{catalina.home}/common/lib/ext,${catalina.home}/common/lib/ext/*.jar
catalina.properties 在 Tomcat 安装目录的 conf 目录中,修改此文件目的在于
指定扩展环境需要的架包。
5.3.3 Tomcat 引入 ROOT.xml 文件
我们使用的是 Tomcat 6.0.24,在 conf 目录中没有 Catalinalocalhost 目录,按
官方文档要求需要在以上目录中创建 ROOT.xml 文件,而且文件名称一定要大写。
所以我们要在 conf 目录中手动创建 catalina 目录,再在 catalina 目录中创建
localhost 目录。用文本打开 ROOT.xml 文件添加以下内容:
<Context path="" crossContext="true">
<Resource
name="jdbc/LiferayPool"
auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:orcl"
username="LPORTAL"
password="LPORTAL"
maxActive="100"
maxIdle="30"
maxWait="1000"
/>
Recky 19968541@
- 23. <Resource
name="mail/MailSession"
auth="Container"
type="javax.mail.Session"
mail.transport.protocol="smtp"
mail.smtp.host="localhost"
/>
<Realm
className="org.apache.catalina.realm.JAASRealm"
appName="PortalRealm"
userClassNames="com.liferay.portal.security.jaas.PortalPrincipal"
roleClassNames="com.liferay.portal.security.jaas.PortalRole"
debug="99"
/>
<!--
Uncomment the following to disable persistent sessions across reboots.
-->
<!--<Manager pathname="" />-->
<!--
Uncomment the following to not use sessions. See the property
"session.disabled" in portal.properties.
-->
<!--<Manager
className="com.liferay.support.tomcat.session.SessionLessManagerBase" />-->
</Context>
说明:jdbc/LiferayPool 是 jndi 连接池名称,根据实际环境配置相关设置。这
里我采用的 oracle 数据库,所以使用的是 oracle 驱动名,并将 ojdbc14.jar 驱动
包复制到 extext-libglobal目录中去。
5.3.4 copy 数据库驱动包
将 ojdbc14.jar 驱动包复制到 extext-libglobal目录中去。
Recky 19968541@
- 24. 5.3.5 修改 ext-spring.xml 文件
用 了 jndi 连 接 池 , 那 么 必 须 要 在 ext-spring.xml 里 面 添 加 下 面 的
liferayDataSource 这个自定义 bean 进行覆盖原有的采用 jdbc 的 bean。
<bean id="liferayDataSource"
class="org.springframework.jdbc.datasource.LazyConnectionDataSourceProxy">
<property name="targetDataSource">
<bean
class="com.liferay.portal.spring.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="jdbc/LiferayPool" />
</bean>
</property>
</bean>
ext-spring.xml 文件在ext-implsrcMETA-INF 目录中。
5.3.6 修改 portal-ext.properties 文件
打开 portal-ext.properties,添加如下内容
jdbc.default.jndi.name=jdbc/LiferayPool
hibernate.dialect=org.hibernate.dialect.Oracle9Dialect
Liferay 底层采用了 Hibernate,所以还需要设置 Hibernate Dialect
portal-ext.properties 在 ext/ext-impl/src 目录中
5.3.7 Tomcat 引入 jaas.config 文件
新 建 jaas.config 文 件 , 在 jaas.config 的 文 件 中 , 添 加 如 下 内 容 :
PortalRealm {
com.liferay.portal.shared.security.jaas.PortalLoginModule required;
Recky 19968541@
- 25. };
将 jaas.config 文件放置在 tomcat 的 conf 目录下。并在 catalina.bat 文件或者在
Myeclipse 关 联 的 Tomcat 服 务 器 中 的 启 动 参 数 中 增 加
-Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config 来 设 置 jaas
的配置,下一步进行详细说明。当然,这首先一定要保证在前面的 ROOT.xml 的
Context 中配置 JAASRealm。
Jaas 是需要被正确配置的,否则系统不可以正确登陆 ,而且会一直不断的访
问/jaas_securit_check,而不能登陆。
5.3.8 修改 Myeclipse 启动 tomcat 配置
修改 tomcat 的 jdk 和启动参数,在“ Optional Java VM arguments” 中添加如
下内容:
-Xms256M -Xmx512M -XX:PermSize=256M -XX:MaxPermSize=512M
-Djava.security.auth.login.config=D:/program/Liferay/service/apache-
tomcat-6.0.24/conf/jaas.config
注意:在执行完生成 ext 扩展工程的 ant 任务之后, Tomcat 目录中的 temp
Recky 19968541@
- 26. 被删除了,没有这个目录 Myeclipse 配置 Tomcat 的时候会报错,这是需要手动
在 Tomcat 根目录中建立 temp 目录。后来发现发布 ext 工程时,Liferay 自己会自
动生成该目录以及其他删除的目录。
5.3.9 修改 Tomcat 的 server.xml 文件
在 conf 目录下打开 server.xml 文件,找到
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
替换成以下内容, 开启压缩 gzip,加速网站访问速度。
<Connector port="8080" protocol="HTTP/1.1" maxHttpHeaderSize="8192" maxThreads="768"
minSpareThreads="128" maxSpareThreads="256"
enableLookups="false" connectionTimeout="30000" acceptCount="768" compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla,traviata"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" URIEncoding="UTF-8"
disableUploadTimeout="true" redirectPort="8443" />
5.3.10修改 Tomcat 的 catalina.bat 文件
在 tomcat 的 catalina.bat 中添加如下内容:
set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx1024m -XX:MaxPermSize=128m -Dfile.encoding=UTF8
-Duser.timezone=GMT+8 -Djava.security.auth.login.config="%CATALINA_HOME%/conf/jaas.config"
如果只是用 Myeclipse 启动 Tomcat 的话,就不需要设置这个。
Recky 19968541@
- 27. 5.4 发布 ext 工程
同上边生成 ext 扩展工程一样,在 ant 视图中添加 ext 工程中的 build.xml 文件
同样 xml 文件添加完毕之后,要打开 ANT 外部工具配置 JRE 和 JVM 参数:
JRE 使用前边安装好的 JDK1.6 ,在 VM argument 中输入如下参数以加大 ant
运行内存:-Xms256M -Xmx512M -XX:PermSize=256M -XX:MaxPermSize=512M。
配置完成之后执行 deploy 任务。默认任务是 deploy,所以再完成配置之后点
击“run”按钮即可执行任务。
Recky 19968541@
- 28. 通过 Myeclipse 控制台的打印信息你会发现 ant 将扩展文件以及各种 jar 包
copy 到 Tomcat 指定的目录中去。并且 Liferay 应用被配置成为默认根应用了。这样
Liferay 门户系统发布完毕。
5.5 启动 Liferay 门户
一切准备就绪之后,可以通过 Myeclipse 来启动或者直接通过 Tomcat 的
startup 来启动。
服务启动完毕之后,服务器会自动打开 Liferay 门户首页。
Recky 19968541@