我正在寻找一个获取groupId的方法。更具体地说,我想在用户登录时获取社区或组织的站点 ID,以便我可以将用户重定向到正确的“站点”。
我尝试在 Liferay 的文档中查看 PortalUtil,但它没有提供获取该 ID 的简单功能。
我也尝试过 ThemeDisplay,但它只适用于 portlet。
这是满足您需求的摘录LoginPostAction
。hook
User user = PortalUtil.getUser(request);
List<Organization> orgList = OrganizationLocalServiceUtil.getUserOrganizations(user.getUserId());
for (Organization org : orgList) {
String orgFriendlyURL = org.getGroup().getFriendlyURL();
.
.//some custom code
.
String myPath = "/" + language + "/group" + orgFriendlyURL + "/home";
LastPath lastPath = new LastPath(StringPool.BLANK, myPath);
HttpSession session = request.getSession();
session.setAttribute(WebKeys.LAST_PATH, lastPath);
_log.debug("Last Path for current User[" + user.getScreenName() + "] is : " + lastPath);
break;
}