我需要爲Liferay文檔庫中的大量文件更改文檔類型(FileEntryType),但我無法做到這一點。以編程方式更改文檔庫文檔文件條目類型
經過幾個小時的測試和熟悉Liferay Github回購,我決定來這裏尋求幫助。
這是我用什麼:
ServiceContext serviceContext = new ServiceContext();
List<DLFileEntry> filesToBeUpdated = DLFileEntryServiceUtil.getFileEntries(
groupId, 0, fileEntryTypeId,
0, 10000, OrderByComparator);
for (DLFileEntry file : filesToBeUpdated) {
System.out.println("Changing file: "+ file.getName());
serviceContext.setAttribute("fileEntryTypeId", fileEntryTypeId);
DLAppServiceUtil.updateFileEntry(file.getFileEntryId(), file.getName(),
file.getMimeType(), null, file.getDescription(),
null, false, null, file.getSize(), serviceContext);
}
我用於測試的文件被正確地發現。問題是在for循環中更新:它總是拋出PortletException。我如何正確更改FileEntryType?