Liferay 6.0.5的定制

安装好了Liferay自然要玩耍一下。不过不管怎么玩都是人家的东西,要最后完成成自己需要的功能和样子,还需要自己去作二次开发定制。关于这方面的内容网上没有比较清晰的思路可以参考,于是自己写了一些方面,给以后留一些参考。

删除sevencogs
默认的安装包中提供了一个叫做sevencogs的示例站点。由于使用了Hooks Plugin,会和原装的liferay表现有所不同,所以如果你自己要做定制的话,最好把他们先删除。
 
rm -rf liferay-portal-6.0.5/tomcat-6.0.26/webapps/sevencogs*

配置Portlets
Liferay除了核心包中提供了很多实用的Portlet之外,还在liferay-portal-6.0.5/tomcat-6.0.26/webapps/下默认部署了很多强大的Portlets。具体的介绍可以参考下面这个页面。
http://www.liferay.com/zh/community/wiki/-/wiki/Main/Liferay+Portlets
个人的建议是不需要的话先删除,反正之后需要了也可以再添加回来。这样服务器启动也可以迅速不少。

配置MYSQL
默认的Liferay使用的嵌入式数据库HSQL,不过你启动的时候Liferay也会提醒你不要太当真,真要用了一定要修改数据库配置。
首先,在mysql中创建数据库。

create database lportal character set utf8;

然后修改下面这个文件(如果没有就创建)。

liferay-portal-6.0.5/tomcat-6.0.26/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=
jdbc.default.password=

之后Liferay启动的时候就会自动读取这个配置文件以对应的数据库配置启动了。如果数据表没有创建过还会贴心的帮你创建并且导入基础数据。
具体各种数据库配置示例可以访问下面的链接。
http://www.liferay.com/zh/community/wiki/-/wiki/Main/Database+Configuration;jsessionid=F70539C702464D413394D1A66428E3EC.node-1

自定义布局和主题
Liferay的外观修改主要分成两个部分Layout和Theme.
Layout指的是布局。页面上每个Portal的大小和相对位置都是通过Layout进行定义的。
Theme指的是主题。页面的图片,HTML风格都是由Theme来决定的。

创建Layout
在最新的Liferay IDE 1.1.0中可以方便的创建Layout Plugin来对这个部分进行定制。
1)创建项目
File ->New Liferay Plug-in Project -> Plug-in Type: Layout.
IDE会创建一个“项目名称-layoutpl”的项目。
2)部署项目
Liferay Server-> Add or Remove -> 选择该项目。启动Liferay -> Server
部署的时候会把项目文件拷贝到liferay-portal-6.0.5/tomcat-6.0.26/webapps/下,然后会被Liferay侦测到,加载到系统中。
3)选择新布局
用管理员帐号登录后,可以通过 Manage -> Page Layout 选择你新开发的布局。

创建Theme
Liferay IDE 1.1.0中同样可以方便的创建Layout Theme来对这个部分进行定制。
1)创建项目
File ->New Liferay Plug-in Project -> Plug-in Type: Layout.
IDE会创建一个“项目名称-theme”的项目。
2)部署项目
Liferay Server-> Add or Remove -> 选择该项目。启动Liferay -> Server
部署的时候会把项目文件拷贝到liferay-portal-6.0.5/tomcat-6.0.26/webapps/下,然后会被Liferay侦测到,加载到系统中。
3)选择新布局
用管理员帐号登录后,可以通过 Manage -> Page -> Look and Feel 选择你新开发的主题。
需要注意的是Liferay支持每个页面配置不同的主题。

创建Portlet
这是大家讨论最多的部分。这边就不细说了。
唯一值得一提的是Liferay开发Portlet支持Plug-in和Ext 两种开发模式。具体的好坏我会以后有机会单独叙述。

为控制面板创建Portlet
除了给每个页面(Page)配置Porlet之外,经常也会有需要为个人控制面板添加Portlet功能。例如我的喜好,我的兴趣,我的足迹之类的功能。
Liferay中控制面板也可以视为一个特殊的页面,左边的菜单栏是一个特殊的Portlet,它会把所有需要显示在控制面板中的Portlet罗列出来。右边则是Portlet点选之后显示的内容。
一个Portlet如果需要显示在控制面板中,需要在/WEB-INF/liferay-portlet.xml中为Portlet添加如下内容

<control-panel-entry-category>my</control-panel-entry-category>
<control-panel-entry-weight>14</control-panel-entry-weight>

control-panel-entry-category指的菜单项的分类,包括’my’, ‘content’, ‘portal’ and ‘server’四种。control-panel-entry-weight指的是菜单项在该分类中的相对位置。
需要注意的是可能会出现常见问题一中的错误。

常见问题
1)Error on line 13 of document : The content of element type “portlet” must match
liferay-portlet.xml对顺序也有一定的要求。最简单的方法就是参考ROOT下的liferay-portlet.xml依样画葫芦,肯定不会错。

参考资料
Liferay THemes.pdf
Liferay Admin Guide



Tags: customize, Java, liferay, portlet

无觅相关文章插件,快速提升流量