搞了有8天的liferay研究,今天终于有了一点进展,在网上搜索的关于界面定制的全部均是要修改portal-impl.jar里的portal.porterties的对应节点的值或新建一个portal-ext.porterties,在里面写对应的节点及节点值然后放在web-inf/classes目录(portal-ext.porterties里的节点会覆盖portal.porterties相同的节点),但对打开界面后的显示界面(可以显示那些portlet)的修改一点用也没有,这个问题一直使我很困惑。
1.首先我在liferay官网上下载的是liferay5.2.3,然后下载了针对这个版本的oracle的数据库备份文件(liferay-portal-sql-oracle-10-5.2.3.dmp).(下载地址:http://sourceforge.net/projects/lportal/files/),导入我的本地数据库(我装的是oracle10XE版).
2.然后将ojdbc14.jar(oracle数据库连接jar包)放至liferay目录的tomcat目录的common/lib/ext中.
3.新建一个portal-ext.porterties文件,将该文件放在liferay目录的tomcat目录的webapps/ROOT/WEB-INF/classes下.内容如下:
jdbc.default.driverClassName=oracle.jdbc.driver.OracleDriver
jdbc.default.url=jdbc:oracle:thin:@127.0.0.1:1521:xe
jdbc.default.username=vendor
jdbc.default.password=*******
browser.launcher.url=http://localhost:8090 //这个主要目的是启动tomcat后,liferay会自动打开http://localhost:8090,我将liferay的tomcat的监听端口改为了8090.
通过第3步的配置,liferay中的tomcat启动后将会访问我的oracle数据库进行信息和资源的配置和读取.
4.然后如果你没有对数据库和其它的配置进行修改后,打开的界面将在左边显示一个"登录"界面,右边显示一个"welcome"界面.
5.下面这一步是关键,即如何进行界面的定制:
打开oracle的表layout.查询到一个groupId为16的记录,里面的列TYPESETTINGS初始内容为:
column-1=58
layout-template-id=2_columns_ii
column-2=47
下面我们就可以修改这列的内容进行定制了,下面是我的修改内容:
column-1=58,82
column-2=47,82,8
layout-template-id=2_columns_ii
显示的界面:
6.在初始状态下,"日历"栏目将会显示"你没有访问该portlet的角色"的提示,这个主要是要在portlet-custom.xml中找到portlet-name等于8的portlet,然后增加以下内容:
<security-role-ref>
<role-name>guest</role-name>
</security-role-ref>
即允许guest的角色访问该portlet.
经过以上步骤,基本的lifery定制就完成了.开发自己的portlet进行liferay扩展在下一篇中我会将详细的步骤进行记录.