This wiki does not contain official documentation and is currently deprecated and read only. Please try reading the documentation on the Liferay Developer Network, the new site dedicated to Liferay documentation. DISCOVER Build your web site, collaborate with your colleagues, manage your content, and more. DEVELOP Build applications that run inside Liferay, extend the features provided out of the box with Liferay's APIs. DISTRIBUTE Let the world know about your app by publishing it in Liferay's marketplace. PARTICIPATE Become a part of Liferay's community, meet other Liferay users, and get involved in the open source project. JDK1.5+TOMCAT5.5+LIFERAY5.2.3 完全安装与配置(完美解决官方文档所出现的异常)
Author: www.chinasb.org
准备工作:
1.安装jdk-1_5_0_22-windows-i586-p.exe在C:\Program Files\Java\jdk1.5.0_22
2.解压apache-tomcat-5.5.28.zip在D:\Dev_Env\apache-tomcat-5.5.28
3.配置环境变量:
JAVA_HOME
C:\Program Files\Java\jdk1.5.0_22
TOMCAT_HOME
C:\Program Files\Apache Software Foundation\Tomcat 5.5
CATALINA_BASE
%TOMCAT_HOME%
CATALINA_HOME
%TOMCAT_HOME%
PATH
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
CLASSPATH
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet.jar
安装步骤:
1.解压 liferay-portal-5.2.3.war 在 %TOMCAT_HOME%/webapps/ROOT/
2.将 %TOMCAT_HOME%/webapps/ROOT/WEBINF/lib/xercesImpl.jar 复制到 %TOMCAT_HOME%/common/endorsed
3.解压 liferay-portal-dependencies-5.2.3.zip 在 %TOMCAT_HOME%/common/lib/ext
额外需要添加的包:activation.jar jms.jar jta.jar jtds.jar(SQL2005的JDBC) mail.jar portal-impl.jar(非常重要) mysql.jar(MySQL的JDBC)
4.编辑 %TOMCAT_HOME%/conf/catalina.properties,在 common.loader 最后添加 ${catalina.home}/common/lib/ext/*.jar
5.新建 %TOMCAT_HOME%/conf/Catalina/localhost/ROOT.xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<Context path="">
<Resource
name="mail/MailSession"
auth="Container"
type="javax.mail.Session"
mail.transport.protocol="smtp"
mail.smtp.host="localhost"
mail.store.protocol="imap"
mail.imap.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>
6.新建 %TOMCAT_HOME%/conf/jaas.config文件
PortalRealm{
com.liferay.portal.kernel.security.jaas.PortalLoginModule required;
};
7.编辑 %TOMCAT_HOME%/bin/catalina.bat (添加-server -XX:PermSize=128M -XX:MaxPermSize=512m -Xms128m -Xmx512m -Duser.-timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config)
if not exist "%CATALINA_HOME%\bin\tomcat-juli.jar" goto noJuli
set JAVA_OPTS=%JAVA_OPTS% -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="%CATALINA_BASE%\conf\logging.properties" -server -XX:PermSize=128M -XX:MaxPermSize=512m -Xms128m -Xmx512m -Duser.-timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config
:noJuli
rem ----- Execute The Requested Command ---------------------------------------
8.编辑 %TOMCAT_HOME%/conf/server.xml (添加URIEncoding="UTF-8")
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 -->
<Connector port="8080" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" />
9. 新建 %TOMCAT_HOME%/webapps/ROOT/WEB-INF/classes/portal-ext.properties (替换你的数据库用户与密码)
# SQLServer 2005
jdbc.default.driverClassName=net.sourceforge.jtds.jdbc.Driver
jdbc.default.url=jdbc:jtds:sqlserver://localhost:1433/lportal
jdbc.default.username=sa
jdbc.default.password=123
10.启动startup.bat(成功).
--------------------------------分隔线---------------------------------
官方文档安装完成后所遇到的问题与解决方法:
1.启动提示Class com.liferay.protal.security.jaas.ProtaRole not found!
解决方法:将 %TOMCAT_HOME%/webapps/ROOT/WEBINF/lib/portal-impl.jar 复制到 %TOMCAT_HOME%/common/lib/ext 目录中
2.PermGen异常 (堆大小不足)
官方文档:
set JAVA_OPTS=-Xms128m -Xmx512m -Dfile.encoding=UTF8 -Duser.-timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config
解决方法:(增加 -server -XX:PermSize=128M -XX:MaxPermSize=512m)
set JAVA_OPTS=-server -XX:PermSize=128M -XX:MaxPermSize=512m -Xms128m -Xmx512m -Dfile.encoding=UTF8 -Duser.-timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config
参数解析:
-vmargs: 说明后面是VM的参数
-Xms128m: 虚拟机占用系统的最小内存
-Xmx512m: 虚拟机占用系统的最大内存
-XX:PermSize: 最小堆大小。一般报内存不足时,都是说这个太小, 堆空间剩余小于5%就会警告,建议把这个稍微设 大一点,不过要视自己机器内存大小来设置
-XX:MaxPermSize: 最大堆大小。这个也适当大些
-Xmx512M的5%为25.6M,理论上要求-Xmx的数值与-XX:MaxPermSize必须大于25.6M
3.启动Tomcat中文显示乱码。(删除-Dfile.encoding=UTF8参数)
官方文档:
set JAVA_OPTS=-Xms128m -Xmx512m -Dfile.encoding=UTF8 -Duser.-timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config
解决方法:
set JAVA_OPTS=-server -XX:PermSize=128M -XX:MaxPermSize=512m -Xms128m -Xmx512m -Duser.-timezone=GMT -Djava.security.auth.login.config=%CATALINA_HOME%/conf/jaas.config
4.默认数据库修改不成功
官方文档:
在 %TOMCAT_HOME%/conf/Catalina/localhost/ROOT.xml增加
<Resource
name="jdbc/LiferayPool"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/lportal?useUnicode=true&characterEncoding=UTF-8"
username="root"
password="root"
maxActive="100"
maxIdle="30"
maxWait="10000"
/>
解决办法:
1.MySQL数据库配置方法
(1).复制JDBC驱动 mysql.jar 到 %TOMCAT_HOME%/webapps/ROOT/WEBINF/lib/ext 目录
(2).新建或编辑 %TOMCAT_HOME%/webapps/ROOT/WEB-INF/classes/portal-ext.properties 文件并添加 (替换你的数据库用户与密码)
# MySQL
jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=root
jdbc.default.password=root
2.SQLServer2005数据库配置方法
(1).复制JDBC驱动 jtds.jar 到 %TOMCAT_HOME%/webapps/ROOT/WEBINF/lib/ext 目录
(2).新建或编辑 %TOMCAT_HOME%/webapps/ROOT/WEB-INF/classes/portal-ext.properties 文件并添加 (替换你的数据库用户与密码)
# SQLServer 2005
jdbc.default.driverClassName=net.sourceforge.jtds.jdbc.Driver
jdbc.default.url=jdbc:jtds:sqlserver://localhost:1433/lportal
jdbc.default.username=sa
jdbc.default.password=123