启用选项"合并Liferay公共页面"默认情况下为所有用户

时间:2013-10-14 14:18:28

标签: liferay portal

我想知道是否有办法默认为所有门户网站的用户激活“合并Liferay公共页面”选项。

此选项可在此设置(查看截图): <控制面板>个人网站&gt;网站页面&gt;公共页面&gt;高级。

enter image description here

我搜索了门户网站属性选项,但没有找到任何内容。

如果有办法通过钩子设置它,我也很感兴趣。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案。

我在AutoLogin钩子中添加了一些代码(参见Liferay auto.login.hook属性,可以在portail.properties文件中设置)。

使用GroupServiceUtil类设置“合并公共页面”选项很容易:

GroupServiceUtil.updateGroup(user.getGroupId(), "mergeGuestPublicPages=true");

如果“com.liferay.portal.security.auth.PrincipalException:PermissionChecker不是initi 提出“错误”。首先需要初始化权限检查程序。这是一种方法:

Company company = PortalUtil.getCompany(request);
Role adminRole =  RoleLocalServiceUtil.getRole(company.getCompanyId(),"Administrator");
List<User> adminUsers = UserLocalServiceUtil.getRoleUsers(adminRole.getRoleId());

PrincipalThreadLocal.setName(adminUsers.get(0).getUserId());
try {
    PermissionChecker permissionChecker = PermissionCheckerFactoryUtil.create(adminUsers.get(0));
    PermissionThreadLocal.setPermissionChecker(permissionChecker);
} catch (Exception e) {
    e.printStackTrace();
}