2

我想检查当前用户是否有权更新期刊文章。为此,我想从自定义 portlet 调用 JournalArticlePermission.check(),但无法从我的 portlet 的类加载器访问类 JournalArticlePermission。

打电话

return permissionChecker.hasPermission(groupId, jaClassName, resourcePrimKey, ActionKeys.UPDATE);

有效,但它绕过了助手类中实现的所有暂存逻辑。

检查期刊文章权限的干净方法是什么?

与liferay 论坛上发布的问题相同,但我并不完全相信所提出的答案,即使用PortalClassInvoker.

4

1 回答 1

0

似乎没有真正的“干净”方式来做到这一点。

权限助手类是portal-impl 包的一部分,因此不能直接在自定义portlet 中使用,正如liferay 论坛上的这个线程中所讨论的,Harish Kumar 和David H Nebinger 提供了宝贵的意见。

选项包括:

  • 从核心帮助类中复制粘贴逻辑,对维护有明显影响

  • 绕过帮助程序代码并直接进入较低级别的检查,将可能有价值的检查(例如暂存权限)放在一边。

于 2013-11-30T15:05:20.137 回答