2

需要为 Liferay 6.2 文档库实现归档/备份功能,AdvancedFileSystemStore如下所示。

dl.store.impl=com.liferay.portlet.documentlibrary.store.AdvancedFileSystemStore

我有以下两种情况。请建议是否有任何 Liferay OOB 功能可用于完成以下任务或有关如何使用自定义开发实现此目标的任何指针。

场景 1: 只有一个站点,该站点具有不同的文件夹,其中包含文档和媒体部分中的各种文档。这些文件夹需要定期备份 - 比如每周一次。逻辑文件夹层次结构和文档应保存在存档文件夹中。

例如:

Sample Site 1 > Documents and Media > RootFolder > Folder1  > File1
Sample Site 1 > Documents and Media > RootFolder > Folder1  > File2
Sample Site 1 > Documents and Media > RootFolder > Folder2  > File1
Sample Site 1 > Documents and Media > RootFolder > Folder2  > File2

备份后存档目录中的这个结构应该是:

ArchiveFolder > RootFolder > Folder1  > File1
ArchiveFolder > RootFolder > Folder1  > File2
ArchiveFolder > RootFolder > Folder2  > File1
ArchiveFolder > RootFolder > Folder2  > File2

场景 2: 有多个站点,每个站点都有不同的文件夹,其中包含各自的文档和媒体部分中的各种文档。所有这些文件夹都需要定期备份 - 比如每周一次。逻辑文件夹层次结构和文档应保存在存档文件夹中。

例如:

Sample Site 1 > Documents and Media > RootFolder > Folder1  > File1
Sample Site 1 > Documents and Media > RootFolder > Folder1  > File2
Sample Site 2 > Documents and Media > RootFolder > Folder1  > File1
Sample Site 2 > Documents and Media > RootFolder > Folder1  > File2

备份后存档目录中的这个结构应该是:

ArchiveFolder > Sample Site 1 > RootFolder > Folder1  > File1
ArchiveFolder > Sample Site 1 > RootFolder > Folder1  > File2
ArchiveFolder > Sample Site 2 > RootFolder > Folder1  > File1
ArchiveFolder > Sample Site 2 > RootFolder > Folder1  > File2
4

1 回答 1

2

在我看来,一个好的解决方案可以是自定义 portlet。

对于定义文件夹,您可以选择: - 管理员放置源/目标文件夹 ID 和组 ID 的用户界面 - 读取 ID 的属性文件

对于计划操作,您可以选择: - 计划操作(在 liferay-portlet.xml 中定义) - 由自动系统 cronjob 调用的服务

在 Liferay 中处理文件非常简单(访问和复制文档库树结构中的任何“节点”):不要关心特定的 store.impl... 使用 Documents API(从 LR 6.1 开始可用)你将拥有一种非常强大(和高级)的文档库工作方式。

于 2015-02-13T10:13:24.863 回答