我正在Liferay 6中使用Vaadin开发portlet,我需要获取portlet所在社区的ID。怎么做?

最佳答案

Liferay中没有Community实体,它只是另一种类型的组(请参阅GroupConstants)

如果您可以访问ThemeDisplay对象,我认为这将为您提供社区的ID

long id = themeDisplay.getLayout().getGroupId();

在struts Action 中,您可以像这样获得ThemeDisplay:
ThemeDisplay themeDisplay =
     (ThemeDisplay)request.getAttribute(WebKeys.THEME_DISPLAY);

其中request可以是RenderRequestActionRequest

10-07 16:07