Liferay 7 Login Post 可以在portal-ext.properties中设置事件吗?
Liferay 7 Login Post Event can be set in portal-ext.properties?
可以在 portal-ext.properties 中设置 login.events.post = com.custom.LoginPostAction 工作
我在 liferay 7 中尝试过这种方式,但它不起作用。我们如何在 liferay 7.
中触发登录 post 事件
liferay-hook.xml
<hook> <portal-properties>portal.properties</portal-properties> </hook>
portal.properties
login.events.post=com.test.action.LoginPostAction
我遇到以下异常
无法使用门户 class 加载程序或当前上下文 class 加载程序加载 com.test.action.LoginPostAction
java.lang.ClassNotFoundException:com.test.action.LoginPostAction 来自 [模块“deployment.ROOT.war”来自服务模块加载器]
在 org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:198)
您现在将拥有生命周期操作。这些是在所需事件上触发的 OSGi 组件。您可以在 blade sample 存储库
中找到一个模板(和一些配置选项)
为了使这个答案独立:代码现在看起来像这样 - 查看示例中的构建说明(并从预登录到 post-登录)
@Component(
immediate = true, property = "key=login.events.pre",
service = LifecycleAction.class
)
public class LoginPreAction implements LifecycleAction {
@Override
public void processLifecycleEvent(LifecycleEvent lifecycleEvent)
throws ActionException {
// Your code goes here
}
}
总的来说,插件机制在 Liferay 6.x 和 7.x 之间发生了巨大的变化。通常,您应该将所有旧的定制迁移到 OSGi - 我想知道 Liferay IDE 中的升级向导是否会自行处理其中的一些...我已经有很长时间没有使用它了。
可以在 portal-ext.properties 中设置 login.events.post = com.custom.LoginPostAction 工作 我在 liferay 7 中尝试过这种方式,但它不起作用。我们如何在 liferay 7.
中触发登录 post 事件liferay-hook.xml
<hook> <portal-properties>portal.properties</portal-properties> </hook>
portal.properties
login.events.post=com.test.action.LoginPostAction
我遇到以下异常
无法使用门户 class 加载程序或当前上下文 class 加载程序加载 com.test.action.LoginPostAction java.lang.ClassNotFoundException:com.test.action.LoginPostAction 来自 [模块“deployment.ROOT.war”来自服务模块加载器] 在 org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:198)
您现在将拥有生命周期操作。这些是在所需事件上触发的 OSGi 组件。您可以在 blade sample 存储库
中找到一个模板(和一些配置选项)为了使这个答案独立:代码现在看起来像这样 - 查看示例中的构建说明(并从预登录到 post-登录)
@Component(
immediate = true, property = "key=login.events.pre",
service = LifecycleAction.class
)
public class LoginPreAction implements LifecycleAction {
@Override
public void processLifecycleEvent(LifecycleEvent lifecycleEvent)
throws ActionException {
// Your code goes here
}
}
总的来说,插件机制在 Liferay 6.x 和 7.x 之间发生了巨大的变化。通常,您应该将所有旧的定制迁移到 OSGi - 我想知道 Liferay IDE 中的升级向导是否会自行处理其中的一些...我已经有很长时间没有使用它了。