0
我尝试向自定义侦听器在门户中创建的每个文件夹添加资源权限,但对数据库表中的“访客”角色具有访问权限,但未成功注册, 只会被注册的权限与动作ID 0的角色,我尝试用这样的:Liferay将资源权限添加到DLFolder
public void onAfterCreate(DLFolder folder) throws ModelListenerException {
super.onAfterCreate(folder);
long folderId = folder.getFolderId();
primFOLDER = folderId;
try {
long guestId = RoleServiceUtil.getRole(companyId, RoleConstants.GUEST).getRoleId();
ResourcePermission resourcePermission = ResourcePermissionLocalServiceUtil
.createResourcePermission(CounterLocalServiceUtil.increment());
resourcePermission.setCompanyId(companyId);
resourcePermission.setName(folderClass);
resourcePermission.setScope(ResourceConstants.SCOPE_INDIVIDUAL);
resourcePermission.setPrimKey(String.valueOf(folderId));
resourcePermission.setRoleId(guestId);
resourcePermission.setActionIds(2);
ResourcePermissionLocalServiceUtil.addResourcePermission(resourcePermission);
ResourcePermission resourcePermissionRecover = ResourcePermissionLocalServiceUtil.getResourcePermission(
companyId, folderClass, ResourceConstants.SCOPE_INDIVIDUAL, String.valueOf(folderId), guestId);
if (resourcePermissionRecover != null) {
resourcePermissionRecover.setActionIds(2);
ResourcePermissionLocalServiceUtil.updateResourcePermission(resourcePermissionRecover);
}
} catch (PortalException | SystemException e) {
e.printStackTrace();
}
}
我不知道这是我的错误。谢谢。