以编程方式获取Liferay中的站点列表

时间:2019-01-22 11:02:15

标签: java liferay liferay-7

我想获取Liferay中的站点列表,该列表与http://localhost:8080/group/control_panel/manage/-/sites/sites中出现的列表相同:

Liferay sites

在SQL中,我将运行select * from Group_ WHERE site=1

如何在Java中获得相同的东西?

GroupServiceUtil似乎没有这种方法。

注意:我的Java代码是在Liferay中运行的模块中,而不是Portlet。

1 个答案:

答案 0 :(得分:1)

您可以使用GroupLocalServiceUtil(https://docs.liferay.com/dxp/digital-enterprise/7.0-sp1/javadocs/portal-kernel/com/liferay/portal/kernel/service/GroupLocalServiceUtil.html#getGroups-long-long-boolean-)的public List<Group> getGroups(long companyId, long parentGroupId, boolean site)。当您不在基于OSGi的portlet内时,它应该是可调用的。如果您在OSGi组件内部,则可以注入GroupLocalService。 如果您不关心parentGroup,则可以改用GroupConstants.ANY_PARENT_GROUP_ID作为parentGroupId。