Liferay:如何在 serviceImpl 类 中获取没有 ThemeDisplay 的用户个人资料PicURL?
Liferay : How to get user profilePicURL without ThemeDisplay in serviceImpl classes?
我想在网络服务调用中获取用户的 profilePicURL。
我只有那个用户的用户 ID。
这就是我正在尝试的
public String getProfilePicURL(long userId) throws SystemException,
PortalException {
String url = "";
ServiceContext serviceContext = ServiceContextThreadLocal
.getServiceContext();
ThemeDisplay themeDisplay = serviceContext.getThemeDisplay();
User user = UserLocalServiceUtil.getUser(userId);
try {
url = user.getPortraitURL(themeDisplay);
} catch (PortalException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
return url;
}
}
当我做 System.out.println(themeDisplay)
时,结果是 null
我不知道还有什么其他方法可以做到这一点。
我应该改变什么?
你可以使用UserConstants.getPortraitURL(imagePath, male, portraitId);
来自 liferay 的 UserConstants class。
我想在网络服务调用中获取用户的 profilePicURL。
我只有那个用户的用户 ID。
这就是我正在尝试的
public String getProfilePicURL(long userId) throws SystemException,
PortalException {
String url = "";
ServiceContext serviceContext = ServiceContextThreadLocal
.getServiceContext();
ThemeDisplay themeDisplay = serviceContext.getThemeDisplay();
User user = UserLocalServiceUtil.getUser(userId);
try {
url = user.getPortraitURL(themeDisplay);
} catch (PortalException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
return url;
}
}
当我做 System.out.println(themeDisplay)
时,结果是 null
我不知道还有什么其他方法可以做到这一点。
我应该改变什么?
你可以使用UserConstants.getPortraitURL(imagePath, male, portraitId);
来自 liferay 的 UserConstants class。