Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用cmis和alfresco删除特定版本?_Java_Alfresco_Cmis - Fatal编程技术网

Java 如何使用cmis和alfresco删除特定版本?

Java 如何使用cmis和alfresco删除特定版本?,java,alfresco,cmis,Java,Alfresco,Cmis,我尝试删除一个特定的文档版本,但只有在这是最后一个版本时才能删除该版本。例如,如果有一个文档有6个版本,并且希望删除版本2.0,则我无法删除它。我需要删除最后4个版本才能删除2.0版 我使用下一个代码: Document document = (Document)session.getObject(id); document.delete(false); 我也用过这个 Document document = (Document)session.getObject(id); List<Do

我尝试删除一个特定的文档版本,但只有在这是最后一个版本时才能删除该版本。例如,如果有一个文档有6个版本,并且希望删除版本2.0,则我无法删除它。我需要删除最后4个版本才能删除2.0版

我使用下一个代码:

Document document = (Document)session.getObject(id);
document.delete(false);
我也用过这个

Document document = (Document)session.getObject(id);
List<Document> versions = document.getAllVersions();
Logger.debug("Numero de versiones:"+versions.size() );
for(int i=0;i<versions.size();i++){
   Document version = versions.get(i);
   if("2.0".equals(version.getVersionLabel())){
     version.delete(false);
   }
}
documentdocument=(Document)session.getObject(id);
列表版本=document.getAllVersions();
debug(“版本号:+versions.size());

对于(int i=0;i当您在露天插入文档时,它将生成一个ID如下:
8f5274fe-f08b-4f58-bc15-5f62de5d209d;1.0
这意味着这是一个ID为的文档
8f5274fe-f08b-4f58-bc15-5f62de5d209d
,并且版本为
1.0
您可以更改版本并获取文档t使用他的ID和更改的版本号

要使用您的版本删除文档,您需要对文档ID进行子串(它将获得最后一个版本),您可以在这里学习如何对ID进行子串:(ID的长度是静态的)


希望这对您有所帮助。

我尝试更改版本,但没有发生任何事情。我使用了:Map newProperties=new HashMap();newProperties.put(PropertyIds.version\u LABEL,“10.0”);document.updateProperties(newProperties);您尝试执行的操作背后的业务逻辑是什么,比如“为什么”要删除特定版本?