Liferay开发之一 编译与部署Eclipse+Tomcat+MySQL+Liferay4.1.2

本文主要是介绍Liferay开发之一 编译与部署Eclipse+Tomcat+MySQL+Liferay4.1.2,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Liferay 开发之一
  编译与部署 Eclipse+Tomcat+MySQL+Liferay4.1.2
一、开发环境
编辑工具:Eclipse3.1+MyEclipse4.0
Java:JDK1.5
Web服务器:Tomcat 5.5.16
数据库:MySQL 4.0.16
Liferay:4.1.2
关于Eclipse、Java、Tomcat和MySQL的安装不在这里说明。注:在系统环境变量将JAVA_PATH设定为JDK1.5的所在目录
二、将Liferay引入到Eclispe
1、 从 www.liferay.com上下载liferay-portal-src-4.1.2.zip文件然后将其解压到硬盘的指定目录下;如D:/Work/portal4
2、 启动Eclipse,然后选择菜单:File->Import…;
在弹出窗口中选择Existing Projects into Workspace,然后点击Next显示下一窗口;
在下一窗口的Select root directory中选择目录D:/Wrok/portal4(你Liferay源码所解压的目录)。
然后点击Finish,此时Eclipse中将会显示如下目录结构:
三、修改代码
(第1、2、3项可不作修改。)
1、 修改项目根目录下的app.server.properties文件
app.server.type= tomcat
....
app.server.tomcat.dir= E : /tomcat      
(注:此 E : /tomcat 为你 Tomcat 的安装目录)
2、 修改portal-ejb/classes/portal.properties文件
portal.release=professional
……
locales=zh_CN,zh_TW,ar_SA,cs_CZ,nl_NL,en_US,
translator.default.languages=zh_CN
3、 修改portal-ejb/classes/system.properties文件
user.country=CN
user.language=zh_CN
user.timezone=GMT+8
4、 修改tools/ext_tmpl/app.server.properties文件,修改内容与第1步相同。
5、 修改tools/ext_tmpl/ext-ejb/classes/portal-ext.properties文件
portal.release=professional
6、 tools/ext_tmpl/build-parent.xml 中加入如下内容。
< copy todir = "${app.server.lib.global.dir}" >
           < fileset dir = "ext-lib/global" />
           < fileset dir = "lib/development" includes = "mysql.jar" />
           < fileset dir = "lib/global" />
</ copy >
7、 修改根目录下的release.properties文件。此为liferay编译后ext的目录
lp.eclipse.dir=D:/Projects/liferay/portal/eclipse
lp.ext.dir=D:/Projects/liferay/portal/ext
lp.source.dir=D:/Projects/liferay/portal/source
四、编译portal
打开项目根目录下的build.xml文件,然后点击右键
选择任务start、build-ext
然后点击Run。
编译完成后将在D:/Projects/liferay/portal/ext目录下生成一系列文件。此目录在 release.properties 文件中指定
五、编译和发布ext
1、在Eclipse中引入ext。在Eclipse菜单中选择File->Import…, 在弹出窗口中选择Existing Projects into Workspace,然后点击Next显示下一窗口;在下一窗口的Select root directory中选择目录D:/Projects/liferay/portal/ext;然后点击Finish。引入后项目目录如下所示:
打开ext项目下的build.xml文件,然后点击右键Run As->Ant build…
在弹出窗口中选择deploy任务
然后点击Run。至此liferay将发布到你E:/tomcat目录下。
六、配置tomcat运行环境
1 、在Tomcat的TOMCAT_HOME/conf/server.xml文件中(修改URIEncoding是增加对中文参数的支持):
<Connector port="80" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" URIEncoding="UTF-8" disableUploadTimeout="true" />
2 、在TOMCAT_HOME/conf/Catalina/localhost目录下增加ROOT.xml文件(配置tomcat下MySQL数据库连接池):
<Context path="" docBase="/" debug="0" reloadable="true" crossContext="true">
        <Resource
             name="jdbc/LiferayPool"
              auth="Container"
              type="javax.sql.DataSource"
              driverClassName="com.mysql.jdbc.Driver"
              url="jdbc:mysql://localhost:3306/lportal"
              username="root"
              password="password"
              maxActive="20"
        />
        <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"
              useContextClassLoader="false"
        />
</Context>
3 、TOMCAT_HOME/conf/Catalina/localhost/ROOT.XML如下:
<Context path="">
<Resource
name="jdbc/LiferayPool"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/lportal?useUnicode=true&amp;characterEncoding=UTF-8"
username=""
password=""
maxActive="100"
maxIdle="30"
maxWait="10000"
/>
<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"
useContextClassLoader="false"
/>
</Context>
4 、catalina.properties 修改:
common.loader=${catalina.home}/common/classes,${catalina.home}/common/i18n/*.jar,${catalina.home}/common/endorsed/*.jar,${catalina.home}/common/lib/*.jar,${catalina.home}/common/lib/ext/*.jar
5 、在TOMCAT_HOME/conf/目录下新增jaas.config文件,jaas.config内容如下:
PortalRealm{
com.liferay.portal.kernel.security.jaas.PortalLoginModule required;
};
6 、catalina.bat 如下:
rem ----- Execute The Requested Command ---------------------------------------
set JAVA_OPTS=-Xms128m -Xmx512m -Dfile.encoding=UTF8 -Duser.timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config
七、运行tomcat
运行TOMCAT_HOME/bin目录下的startup.bat文件启动tomcat,服务器启动完成后在IE地址栏内输入 http://localhost。(如果你没有更改你的tomcat端口,则输入: http://localhost:8080)
作者:王宏江 QQ:9131144 Email:workflow@163.com

这篇关于Liferay开发之一 编译与部署Eclipse+Tomcat+MySQL+Liferay4.1.2的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/681620

相关文章

MySQL 多表连接操作方法(INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL OUTER JOIN)

《MySQL多表连接操作方法(INNERJOIN、LEFTJOIN、RIGHTJOIN、FULLOUTERJOIN)》多表连接是一种将两个或多个表中的数据组合在一起的SQL操作,通过连接,... 目录一、 什么是多表连接?二、 mysql 支持的连接类型三、 多表连接的语法四、实战示例 数据准备五、连接的性

MySQL中的分组和多表连接详解

《MySQL中的分组和多表连接详解》:本文主要介绍MySQL中的分组和多表连接的相关操作,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧... 目录mysql中的分组和多表连接一、MySQL的分组(group javascriptby )二、多表连接(表连接会产生大量的数据垃圾)MySQL中的

MySQL 中的 JSON 查询案例详解

《MySQL中的JSON查询案例详解》:本文主要介绍MySQL的JSON查询的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 的 jsON 路径格式基本结构路径组件详解特殊语法元素实际示例简单路径复杂路径简写操作符注意MySQL 的 J

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Windows 上如果忘记了 MySQL 密码 重置密码的两种方法

《Windows上如果忘记了MySQL密码重置密码的两种方法》:本文主要介绍Windows上如果忘记了MySQL密码重置密码的两种方法,本文通过两种方法结合实例代码给大家介绍的非常详细,感... 目录方法 1:以跳过权限验证模式启动 mysql 并重置密码方法 2:使用 my.ini 文件的临时配置在 Wi

MySQL重复数据处理的七种高效方法

《MySQL重复数据处理的七种高效方法》你是不是也曾遇到过这样的烦恼:明明系统测试时一切正常,上线后却频频出现重复数据,大批量导数据时,总有那么几条不听话的记录导致整个事务莫名回滚,今天,我就跟大家分... 目录1. 重复数据插入问题分析1.1 问题本质1.2 常见场景图2. 基础解决方案:使用异常捕获3.

SQL中redo log 刷⼊磁盘的常见方法

《SQL中redolog刷⼊磁盘的常见方法》本文主要介绍了SQL中redolog刷⼊磁盘的常见方法,将redolog刷入磁盘的方法确保了数据的持久性和一致性,下面就来具体介绍一下,感兴趣的可以了解... 目录Redo Log 刷入磁盘的方法Redo Log 刷入磁盘的过程代码示例(伪代码)在数据库系统中,r

mysql中的group by高级用法

《mysql中的groupby高级用法》MySQL中的GROUPBY是数据聚合分析的核心功能,主要用于将结果集按指定列分组,并结合聚合函数进行统计计算,下面给大家介绍mysql中的groupby用法... 目录一、基本语法与核心功能二、基础用法示例1. 单列分组统计2. 多列组合分组3. 与WHERE结合使

Mysql用户授权(GRANT)语法及示例解读

《Mysql用户授权(GRANT)语法及示例解读》:本文主要介绍Mysql用户授权(GRANT)语法及示例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql用户授权(GRANT)语法授予用户权限语法GRANT语句中的<权限类型>的使用WITH GRANT

Mysql如何解决死锁问题

《Mysql如何解决死锁问题》:本文主要介绍Mysql如何解决死锁问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录【一】mysql中锁分类和加锁情况【1】按锁的粒度分类全局锁表级锁行级锁【2】按锁的模式分类【二】加锁方式的影响因素【三】Mysql的死锁情况【1