如何在 Liferay 中为用户分配站点角色

How to assign a Site Role for user in Liferay

我正在以编程方式创建用户并尝试以编程方式分配站点角色。我需要为用户分配 "Site Administration" 角色。所以我尝试如下,

 Role role = RoleLocalServiceUtil.getRole(companyId, "Site Administrator");
   System.out.println("Role Id is !! " + role.getRoleId());
   UserLocalServiceUtil.addRoleUser(role.getRoleId(), newUser.getUserId());
   UserLocalServiceUtil.updateUser(newUser);

从上面的代码中,"Site Administration" 角色被指定为 "Regular Role"。我需要将 "Site Administration" 角色指定为 "Site Role"。

关于如何将角色分配为站点角色的任何建议?

您必须使用 UserGroupRoleLocalServiceUtil.java 的 API 方法,如下所示。

public static void addUserGroupRoles(long userId, long groupId,
        long[] roleIds)