在Liferay的钩子中定义和读取自定义属性

时间:2015-10-23 13:15:39

标签: liferay liferay-6

我需要在钩子中定义一些自定义属性(例如myhookname.myproperty)并在钩子Java类中读取它们。

我知道我无法创建一个自定义属性文件(因为它将在钩子的webapps目录中被删除,但是钩子将会在ROOT上下文中生效#34;)所以唯一的想法似乎是在portal-ext中添加新属性... 但是,通过这种方式,钩子部署可以保持一致(因为它需要修改portal-ext)。

Liferay的做法是什么? 你有其他想法来实现我的需求吗?

由于

1 个答案:

答案 0 :(得分:3)

请参阅Liferay 6.2开发人员指南中的Extending and Overriding portal.properties

如何:

  1. 在钩子的类路径根目录中创建portal-hooked.properties文件(例如,在Maven构建项目的情况下为src / main / resources)。我们假设该文件将包含my.custom.property = Aha定义。
  2. liferay-hook.xml
  3. 中注册文件

    <hook> <portal-properties>portal-hooked.properties</portal-properties> </hook>

    1. 现在,您可以使用PropsUtil读取Java代码中的属性值:com.liferay.portal.kernel.util.PropsUtil.get("my.custom.property")