在开始迁移以前,需要准备好:
1. websphere : 必须是6.0以上的版本才支持Lifieray 4.3,因为6.0以下的websphere其XML版本不支持已经升级到xml 2.4 version 的liferay 4.3。如果使用的是websphere6.0.0.x,则需要pack到6.0.2.x 以上,否则登录页面无法显示(这是一个response的错误);如果使用的是websphere6.1.0.x,则需要pack到6.1.0.9,pack2解决了前面提到登录页面错误问题,而到pack9这是修正了webshpere自带的portlet container的bug,这个bug会导致liferay无法加载portlet。
2、我才采用的oracle版本为10.2.0.1.0
一、在websphere中建立oracle连接
我的websphere目录为/opt/IBM/WebSphere/AppServer,下面我将使用%WEBSPHERE%来代替。
1. 打开linux终端, 进入%WEBSPHERE%/bin目录下,执行:
./startServer.sh server1
等待完成启动,打开IE,输入地址:http://localhost:9060/ibm/console/进入管理页面。选择:资源-->JDBC-->JDBC提供程序-->新建。
名称:ORACEL JDBC
类(驱动包)路径:${ORACLE_DRIVER_PATH}/ojdbc14.jar,但要将ojdbc14.jar拷贝到%WEBSPHERE%\lib\ext 下面,并在:环境-->websphere变量中新建ORACLE_DRIVER_PATH对应的路径为:/opt/IBM/WebSphere/AppServer/lib/ext 。
实现类名:oracle.jdbc.pool.OracleConnectionPoolDataSource
其他默认,点击确定。在页面上方,点击保存。
2. 选择:资源-->JDBC-->JDBC提供程序-->ORACEL JDBC-->数据源-->新建
名称:Resourceoracle_201009(名称自定义,和web.xml中对应)
JNDI名称:jdbc/LiferayPool
数据库名:shair
数据源属性url:jdbc:oracle:thin:@localhost:1521:orcl
其余默认,点击确定。保存。
3. 选择:资源-->JDBC-->JDBC提供程序-->ORACEL JDBC-->数据源-->Resourceoracle_201009-->JAAS - J2C 认证数据-->新建
输入当前使用的用户标识和密码,为需要连接数据库的用户名和密码,点击确定。保存。
4. 选择:资源-->JDBC-->JDBC提供程序-->ORACEL JDBC-->数据源-->Resourceoracle_201009
组件管理的认证别名:选择*/shair(*表示websphere所建立节点名称)
容器管理的认证别名:选择*/shair点击确定并保存。
然后,点击“测试连接”,如果一切正常的话,应该可以页面上方看到连接成功的信息。
到此,oracle的数据库JDBC配置完成(其他的数据库可类推)。
web.xml中关于数据库连接的配置:
<resource-ref id="Resourceoracle_201009">
<res-ref-name>jdbc/LiferayPool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
二、安全性配置
1. 选择:安全性-->安全管理、应用程序和基础结构。
2. 点击“安全配置向导”,默认,点击下一步。
3. 选择“联合存储”,点击下一步。
4. 用户名和密码(随意)输入,下一步,点击完成。
5. 回到主页面,“用户帐户存储库”选择“联合存储”,点击“设置为当前”。
点击保存。
最后,将liferay-portal-jaas-4.2.2.jar(http://sourceforge.net/project/showfiles.php?group_id=49260&package_id=42607)拷贝到%WEBSPHERE%\lib\ext下。
三、邮件配置
1. 选择:资源--邮件-->邮件提供程序-->Built-in Mail Provider-->邮件会话-->新建
名称:Resourcemail_201009
JNDI名称:mail/MailSession
其余默认,点击确定,并保存。
<resource-ref id="Resourcemail_201009">
<res-ref-name>mail/MailSession</res-ref-name>
<res-type>javax.mail.Session</res-type>
<res-auth>Container</res-auth>
</resource-ref>
四、部署Liferay应用
在部署以前,我们需要Liferay的ear或war包,可以直接从http://sourceforge.net/project/showfiles.php?group_id=49260&package_id=42607下载,当然也可以自己生成。这里,我选择的是自己生成。
1. 建立Liferay开发环境并部署到tomcat(可参考:http://www.iteye.com/post/369646)
2. 打开cmd,进入%TOMCAT_HOME%\webapps\ROOT,执行命令:
jar -cvf liferay_portal.war *.*
以上命令将把该目录下的所有文件打包为liferay_portal.war
3. 打包完成后,回到webshpere控制台,选择:应用程序-->安装新的应用程序
本地文件系统:选择刚才打包好的liferay_portal.war
上下文根:输入"/",注意WebSphere的"/"文根已经被DefaultApplication占用,你可以把它卸载。
点击下一步。
4. 完成了war包的安装以后,websphere还需要一些共用库来支持Liferay,需要拷贝%TOMCAT_HOME%\lib\ext下的所有jar到%WEBSPHERE%/lib/ext下,也可以到http://sourceforge.net/project/showfiles.php?group_id=49260&package_id=42607去下载一个liferay-portal-tomcat-4.3.2的绑定版,然后将里面的%TOMCAT_HOME%\lib\ext的东西拷过去也是可以的,把log4j.jar也拷贝到%WEBSPHERE%/lib/ext下。
至此,迁移完成!
重新启动websphere,让lib生效。
打开linux终端, 进入%WEBSPHERE%/bin目录下,执行:
./stopServer.sh server1
完成后,再执行:
./startServer.sh server1
在浏览器中输入:http://localhost:9080/