如何从自定义portlet访问日记文章权限

时间:2013-07-11 17:05:26

标签: permissions liferay

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

调用

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

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

检查期刊文章权限的简洁方法是什么?

与发布here on liferay forums相同的问题,但并未完全确信所提出的答案,即使用PortalClassInvoker

1 个答案:

答案 0 :(得分:0)

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

权限帮助程序类是portal-impl程序包的一部分,因此不能直接在自定义portlet中使用,如this thread on liferay forums中所述,并且有来自Harish Kumar和David H Nebinger的宝贵意见。

选项包括:

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

  • 绕过帮助程序代码并直接进入较低级别的检查,留下可能有价值的检查(例如转移权限)。