gpt4 book ai didi

java - 在 session 超时时设置 Liferay Hook

转载 作者:行者123 更新时间:2023-11-30 06:15:52 25 4
gpt4 key购买 nike

我想用 Java 编写一个 Hook ,如果我的 Liferay 5.2.3 门户的 session 超时,它就会执行。

我设法编写了一个钩子(Hook),每当用户单击注销链接时,它就会在 liferay-hook.xml 中使用以下设置执行:

<hook>
<event>
<event-class>com.extensions.hooks.LogoutHook</event-class>
<event-type>logout.events.pre</event-type>
</event>
</hook>

然而,如果 session 超时,Logout Hook 不会被调用,但我需要在超时时执行相同的方法。我没有找到 session 超时的事件类型。

有没有办法在 session 超时时执行 Java 方法并识别已结束 session 的用户 ID?

最佳答案

有一个事件将在用户 session 的 session 到期/超时事件时触发,

# Servlet session destroy event
servlet.session.destroy.events = com.extensions.hooks.CustomPreSessionExpireAction

您可以在 liferay-hook.xmlportal.properties [Written in Hook] 或 portal-ext.properties 中添加此属性>.

并且可以用作,

public class CustomPreSessionExpireAction extends SessionAction {

@Override
public void run(HttpSession session) throws ActionException {
//Code
}
}

但是,我们只能在这里使用HttpSession。所以,这里需要想办法获取userId

谢谢

关于java - 在 session 超时时设置 Liferay Hook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28302029/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com