【问题标题】:Programmatically get list of sites in Liferay以编程方式获取 Liferay 中的站点列表
【发布时间】:2019-06-15 20:08:27
【问题描述】:

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

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

如何在 Java 中得到同样的东西?

GroupServiceUtil好像没有这种方法。

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

【问题讨论】:

    标签: java liferay liferay-7


    【解决方案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。

    【讨论】:

    • 我刚刚看到 GroupServiceUtil 也提供了这个getGroups 操作。您也可以使用 GroupConstants.ANY_PARENT_GROUP_ID 和 site=true 来调用它
    猜你喜欢
    • 2021-12-08
    • 2015-12-25
    • 2021-05-27
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 2015-06-18
    • 2017-10-09
    • 1970-01-01
    相关资源
    最近更新 更多