如何定义一个动作在liferay portlet中部署?

Obt*_*ice 4 liferay

我在liferay中开发了一个portlet我有一个表(实体),我想在portlet部署时用数据填充它.如何在部署操作期间调用类的方法?

Obt*_*ice 5

最后我解决了.

我必须在src文件夹中的某处创建我的动作类.

package com.example.portal.events;

import java.util.Arrays;

import com.liferay.portal.kernel.events.SimpleAction;

public class ExampleStartupAction extends SimpleAction {

    public void run(String[] ids) {

    System.out.println("############################ This is a Startup Action ##########################"+ ids.length+" "+Arrays.toString(ids));

    }

}
Run Code Online (Sandbox Code Playgroud)

然后你必须在WEB-INF的src文件夹中创建一个名为portal.properties的文件,并将此行添加到它:

application.startup.events=com.example.portal.events.ExampleStartupAction
Run Code Online (Sandbox Code Playgroud)

最后,您必须编辑liferay-hook.xml文件并在上面添加以下行:

<portal-properties>portal.properties</portal-properties>
Run Code Online (Sandbox Code Playgroud)

方法运行,将在portlet的deply期间运行.