我正在为liferay布局模型创建一个监听器。我想让页面创建/更新用户详细信息到日志。这是我代码中的一个片段。
public class LayoutListener extends BaseModelListener<Layout> {
private final static Logger log = Logger.getLogger(LayoutListener.class);
@Override
public void onAfterRemove(Layout layout) throws ModelListenerException {
// Need to find user deatils here.
if (log.isInfoEnabled()) {
log.info("Page -- " + layout.getName() + " -- removed.");
}
super.onAfterRemove(layout);
}
}
如何让相关用户在此方法中删除页面?
PS - 我能够让用户访问当前线程。但我需要知道这样做的正确方法。
答案 0 :(得分:1)
这就是liferay在Audit EE plugin:
中为听众提取的方式if(PrincipalThreadLocal.getName() != null) {
userId = GetterUtil.getLong(PrincipalThreadLocal.getName());
}
我们在博客和文档的自定义监听器中也使用相同的东西。