liferay-hook(1)

liferay-hook(一)

1、Portal Properties

我们可以通过指定一个文件覆盖portal的配置文件,这个文件部署后就会对portal起作用

 

在liferay-hook.xml中添加<portal-properties>portal.properties</portal-properties>

 

在portal.properties里面添加event事件:

application.startup.events

login.events.post

login.events.pre

logout.events.post

logout.events.pre

servlet.service.events.post

servlet.service.events.pre

servlet.session.create.events

servlet.session.destroy.events

类名可以自己定义,基本上都是继承com.liferay.portal.kernel.events.Action,根据要求也可以继承自com.liferay.portal.kernel.events.SimpleAction或com.liferay.portal.kernel.events.SessionAction

 

下面是参数的默认值,可以覆盖

auth.forward.by.last.path=true

javascript.fast.load=true

layout.template.cache.enabled=true

layout.user.private.layouts.enabled=true
layout.user.private.layouts.modifiable=true
layout.user.private.layouts.auto.create=true

layout.user.public.layouts.enabled=true
layout.user.public.layouts.modifiable=true
layout.user.public.layouts.auto.create=true

my.places.show.community.public.sites.with.no.layouts=true
my.places.show.community.private.sites.with.no.layouts=true
my.places.show.user.public.sites.with.no.layouts=true
my.places.show.user.private.sites.with.no.layouts=true
my.places.show.organization.public.sites.with.no.layouts=true
my.places.show.organization.private.sites.with.no.layouts=true

terms.of.use.required=true

theme.css.fast.load=true
theme.images.fast.load=true

passwords.passwordpolicytoolkit.generator=dynamic
passwords.passwordpolicytoolkit.static=iheartliferay

layout.static.portlets.all=1_WAR_chatportlet
例如:
login.events.post=cn.hook.LoginPostAction
terms.of.use.required=false
LoginPostAction放在web-inf/src下面
envent事件也可以直接放在liferay-hook.xml里面
形如:
<event>
<event-class>cn.hook.LoginPostAction
</event-class>
<event-type>login.events.post</event-type>
</event>
2、语言绑定
在liferay-hook.xml中添加
<language-properties>
  content/Language_en_US.properties
 </language-properties>
在wen-info/src下面添加content/Language_en_US.properties文件
3、模板监听器
监听器实现
com.liferay.portal.model.ModelListener
4、hook jsp
liferay-hook.xml中添加
<custom-jsp-dir>/custom_jsps</custom-jsp-dir>
在docroot文件夹下添加custom_jsps文件夹,在文件价夹下面,添加你要重写的jsp,或者要新增的jsp文件。
然后部署。