CQ 5.6.1 ::引入自定义组件的版本控制功能

时间:2015-01-06 18:42:41

标签: cq5

我正在使用CQ 5.6.1并且要求我们应该能够将页面与先前版本进行比较。我认为基本上意味着我们必须将版本控制功能引入除标准开箱即用文本,图像,文本图像和标题组件之外的组件。

这可能吗?

提前致谢

1 个答案:

答案 0 :(得分:1)

有时间扭曲功能,您可以及时“滚动”以查看以前版本的页面。你可以在旁边的第4个标签“版本控制”中找到这个。 唯一的缺点是DAM资产。由于它们仅通过其路径引用,因此即使您查看页面本身的古老版本,也将显示此资产的当前版本。如果资产直接上传到页面,它将与页面的其余部分一起进行版本控制。

如果您想以编程方式处理此问题,请参阅我最近在当前项目中使用的简短代码段。

导入:

import javax.jcr.Session;
import javax.jcr.version.Version;
import javax.jcr.version.VersionHistory;
import javax.jcr.version.VersionIterator;
import javax.jcr.version.VersionManager;

代码:

Session session = currentNode.getSession();
VersionManager vm = session.getWorkspace().getVersionManager();
VersionHistory versionHistory = vm
        .getVersionHistory(currentNode.getPath());
VersionIterator vIt = versionHistory.getAllVersions();
while (vIt.hasNext()) {
    Version version = vIt.nextVersion();
}