我正在Liferay 6中使用Vaadin开发portlet,我需要获取portlet所在社区的ID。怎么做?
答案 0 :(得分:11)
Liferay中没有社区实体,它只是另一种群体(见GroupConstants
)
如果您有权访问ThemeDisplay
个对象,我认为这会为您提供社区ID
long id = themeDisplay.getLayout().getGroupId();
在struts动作中你可以像这样获得ThemeDisplay:
ThemeDisplay themeDisplay =
(ThemeDisplay)request.getAttribute(WebKeys.THEME_DISPLAY);
其中request
可以是RenderRequest
或ActionRequest
。
答案 1 :(得分:0)
对于那些使用Spring MVC作为Liferay portlet的人,将其添加到ControllerClass
@ModelAttribute("tD")
public String getThemeDisplay(RenderRequest req) {
ThemeDisplay themeDisplay = (ThemeDisplay) req.getAttribute(WebKeys.THEME_DISPLAY);
return themeDisplay.getPathThemeImages();
}
要在jsp中引用图像,只需添加
<img src="${tD}/[image-path] />