我创建了一个Liferay portlet,可以将图像文件上传到图库。我已经能够通过IGImageLocalServiceUtil以编程方式从Liferay服务器添加和检索图像,但我似乎无法在控制面板下的图像库portlet中看到图像。我怀疑这与许可问题有关。你能帮我找一下我代码中的错误吗?感谢。
long userId = themeDisplay.getUserId();
long groupId = themeDisplay.getLayout().getGroupId();
String newFilename = "test";
long folderId = 0;
String[] permissions = { "VIEW" };
serviceContext.setCommunityPermissions( permissions );
serviceContext.setGuestPermissions( permissions );
igImage = IGImageLocalServiceUtil.addImage( userId, groupId, folderId, newFilename, "", sourceFile, "image/png" ,serviceContext);
IGImageLocalServiceUtil.addImageResources(igImage, serviceContext.getCommunityPermissions(), serviceContext.getGuestPermissions());
答案 0 :(得分:0)
我现在明白了。在我的问题中我没能提到的是这个portlet位于控制面板中。因此,每当我通过themeDisplay.getLayout()。getGroupId()而不是网站自己的groupId获取groupId时,该图像与控制面板而不是网站相关联。
我应该使用themeDisplay.getDoAsGroupId()而不是themeDisplay.getLayout()。getGroupId()然后。