如何在Liferay中检索用户配置文件图片

如何在Liferay中检索用户配置文件图片,liferay,profile,image,liferay-6,Liferay,Profile,Image,Liferay 6,我要检索用户配置文件图片。我该怎么做?你能分享一段代码片段吗?我正在使用Liferay 6.0.6。它只有user.get肖像ID()而没有user.get肖像URL()。因此,一旦我在JAVA类中获得肖像id,我该如何处理它呢?请参阅UserConstants.get肖像URL(…) 通过这种方法,您可以获得图像url 如果需要图像对象,可以使用ImageLocalServiceUtil加载它: long portraitId = user.getPortraitId();

我要检索用户配置文件图片。我该怎么做?你能分享一段代码片段吗?我正在使用Liferay 6.0.6。它只有user.get肖像ID()而没有user.get肖像URL()。因此,一旦我在JAVA类中获得肖像id,我该如何处理它呢?

请参阅
UserConstants.get肖像URL(…)

通过这种方法,您可以获得图像url

如果需要图像对象,可以使用
ImageLocalServiceUtil
加载它:

        long portraitId = user.getPortraitId();
        Image image = ImageLocalServiceUtil.getImage(portraitId);

在JSP中渲染肖像至少有两个选项:

<img src="<%= themeDisplay.getPathImage()%>  
  /image_gallery?img_id=<%= image.getImageId()%>&t=  
  <%= ImageServletTokenUtil.getToken(image.getImageId())%>">  

<img src="<%= themeDisplay.getPathImage() %>/user_portrait?img_id=<%=id %>">

/图像库?图像库id=&t=
">  
/用户肖像?img\u id=“>

第一种方法包含基于安全令牌的附加安全特性,您可能会发现这些特性与您的需求相关,也可能不相关。

谢谢一个标记:)但是如何获得imagePath以使用GetGraphicURL()实现呢?另外,一旦获得图像对象,如何渲染它;嗨,马克,如果我必须使用主题显示获取imagePath,我必须能够首先在“JAVA类”中获取主题显示。。。。我知道我们可以这样做:ThemeDisplay-ThemeDisplay=ThemeDisplay)request.getAttribute(WebKeys.THEME\u DISPLAY);但是,“请求”代表什么?我没有使用动作类或servlet来使用“请求”,您使用什么?它是一个portlet吗?Mark,我按照您的建议使用了ImageLocalServiceUtil,它工作正常。。。非常感谢:)
ImageServletTokenUtil
从Liferay 6.1开始被
WebServerServletTokenUtil
取代