Как сделать глобальный (компании) id группы в компании "Liferay"?
как получить идентификатор глобальной (компании) группы В Liferay без доступа ThemeDisplay
?
П. С.: С ThemeDisplay
все просто: themeDisplay.getCompanyGroupId()
.
4 ответов
когда у вас есть только один Company
на вашем портале:
Company company = CompanyLocalServiceUtil.getCompanyByMx(PropsUtil.get(PropsKeys.COMPANY_DEFAULT_WEB_ID));
long globalGroupId = company.getGroup().getGroupId();
расширения ответ вы можете найти company
Если вы знаете некоторое значение экземпляра портала (Company
):
-
если вы знаете
webId
экземпляра портала, можно найтиcompany
by:String webId = "liferay.com"; // PropsUtil.get(PropsKeys.COMPANY_DEFAULT_WEB_ID) Company company = CompanyLocalServiceUtil.getCompanyByWebId(webId); long globalGroupId = company.getGroup().getGroupId();
-
если вы знаете
mail-domain
экземпляра портала, можно найтиcompany
by:String mailDomain = "liferay.com"; Company company = CompanyLocalServiceUtil.getCompanyByMx(mailDomain); long globalGroupId = company.getGroup().getGroupId();
-
если вы знаете
virtual host
экземпляра портала, можно найтиcompany
by:String virtualHost = "localhost"; Company company = CompanyLocalServiceUtil.getCompanyByVirtualHost(virtualHost); long globalGroupId = company.getGroup().getGroupId();
есть и другие полезные методы, доступные для изучения в CompanyLocalServiceUtil
для тех, кто заинтересован.
спасибо желтое для руководства, это было действительно полезно.
вы можете использовать следующие :
GroupLocalServiceUtil.getCompanyGroup(PortalUtil.getDefaultCompanyId()).getGroupId();
Если вам нужна эта информация для библиотеки документов, вы можете использовать
public static long getDefaultCompanyId(){
long companyId = 0;
try{ companyId = getDefaultCompany().getCompanyId(); }
catch(Exception e){ System.out.println(e.getClass() + " " +e.getMessage()); }
return companyId;
}
public static long getDefaultGroupId (){
long companyId = getDefaultCompanyId();
long globalGroupId = 0L;
Group group = null;
try {
group = GroupLocalServiceUtil.getGroup(companyId, "Guest");
} catch (PortalException | SystemException e) {
e.printStackTrace();
return globalGroupId;
}
globalGroupId = group.getGroupId();
return globalGroupId;
}