alfresco - 如何使用 java 添加 nodeRef 作为另一个节点的新版本?

alfresco - how to add a nodeRef as the new version of another node using java?

您好,我是 alfresco 的新手,非常感谢您的帮助。 我正在尝试在编辑他的属性时添加一个新的节点引用作为文档的新版本。 我的场景 我可以创建一个以他的属性为内容的 PDF 文件,在更新他的属性后,我用 behavior/policies NodeServicePolicies.OnUpdateNodePolicy 来做这个。 示例:当我编辑名称时,我可以在 PDF 文件中看到它

但是这个新文件需要是编辑文件的新版本,我不知道如何解决这个问题。 感谢您的回答。 提前致谢。

从 VersionService 查看 createVersion 方法 API here

https://docs.alfresco.com/4.0/concepts/versioning.html

您正在寻找版本控制。 正如 Curtis 提到的,使用 API 是一个选项,但如果您以这种方式设置,Alfresco 会自动为您执行此操作。此外,创建新版本不会更改节点的 nodeRef。

我的修复:

我刚刚添加了获取新文件的内容并设置为上一个节点的新内容。像这样

void updateVersionWithNewNodeContent(nodeA){ // nodeB is the new version of the file. NodeRef nodeB; nodeService.setProperty(nodeA, ContentModel.PROP_CONTENT,nodeService.getProperty(nodeB, ContentModel.PROP_CONTENT)); }