1

画像ファイルを画像ギャラリーにアップロードする Liferay ポートレットを作成しました。IGImageLocalServiceUtil を介してプログラムで Liferay サーバーから画像を追加および取得することは既に可能ですが、コントロール パネルの画像ギャラリー ポートレットに画像が表示されないようです。これは許可の問題と関係があると思われます。私のコードのどこが間違っているのか教えてください。ありがとう。

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());
4

1 に答える 1

0

分かりました。私の質問で言及できなかったのは、このポートレットがコントロール パネルにあるということです。そのため、サイト独自の groupId の代わりに themeDisplay.getLayout().getGroupId() を介して groupId を取得するたびに、画像はサイトではなくコントロール パネルに関連付けられます。

その場合、themeDisplay.getLayout().getGroupId() の代わりに themeDisplay.getDoAsGroupId() を使用する必要があります。

于 2012-11-09T11:30:07.960 に答える