5

我有一个关于 Liferay Startup Events 的问题。

在 Liferay 文档中给出:

启动事件

输入以逗号分隔的扩展类名列表com.liferay.portal.struts.SimpleAction。这些类将在指定的事件中运行。

global.startup.events谁能告诉我和之间有什么区别,application.startup.events任何人都可以告诉我在什么情况下我们需要覆盖它们?

这两个启动事件都应该延长com.liferay.portal.struts.SimpleAction吗?我在里面找不到任何东西,SimpleAction除了这个:

public abstract class SimpleAction {

    public abstract void run(String[] ids) throws ActionException;

    }
}

我也想知道这个类什么都不包含,Liferay 怎么知道要读取和处理哪些 XML 文件?

谢谢

4

1 回答 1

16

global.startup.events- 为全球服务器运行一次

application.startup.events- 在启动时为每个门户实例运行。如果您的服务器上有一个门户实例(正常情况) - 此属性之间没有区别。我用application.startup.events.

扩展com.liferay.portal.kernel.events.SimpleAction类和 impliment run-methode,这将由 liferay 启动调用。为此,创建一个钩子插件并在 liferay-hook.xml 中注册属性文件,例如:

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

在类路径中创建portal-myext.properties并设置您的启动操作:

application.startup.events=com.my.actions.MyStartupAction

动作MyStartupAction必须在同一个类路径中,因此是同一个钩子插件。

于 2012-04-27T19:48:02.663 回答