<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to upload a new version using Java API ? in Alfresco Forum</title>
    <link>https://connect.hyland.com/t5/alfresco-forum/how-to-upload-a-new-version-using-java-api/m-p/113614#M31596</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;How can i upload a new version of the document using Java API?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;There are two services which may be useful in this case. &lt;A href="https://dev.alfresco.com/resource/docs/java/org/alfresco/service/cmr/coci/CheckOutCheckInService.html" rel="nofollow noopener noreferrer"&gt;&lt;STRONG&gt;&lt;EM&gt;CheckOutCheckInService&lt;/EM&gt;&lt;/STRONG&gt;&lt;/A&gt; and &lt;STRONG&gt;&lt;EM&gt;&lt;A href="https://dev.alfresco.com/resource/docs/java/org/alfresco/service/cmr/version/VersionService.html" rel="nofollow noopener noreferrer"&gt;VersionService&lt;/A&gt;.&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;The second one seemed to be more appropriate.&lt;/P&gt;&lt;P&gt;This was my initial code:&lt;/P&gt;&lt;PRE class="language-java line-numbers"&gt;&lt;CODE&gt;Version currentVersion &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; versionservice&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;getCurrentVersion&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;docNode&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;Map&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;String&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; Serializable&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; versionProps &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;new&lt;/SPAN&gt; &lt;SPAN class="token class-name"&gt;HashMap&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;&amp;lt;&lt;/SPAN&gt;String&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; Serializable&lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;versionProps&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;put&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;VersionModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;PROP_VERSION_TYPE&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; VersionType&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;MINOR&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;versionservice&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;createVersion&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;docNode&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; versionProps&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;nodeService&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;setProperties&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;docNode&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; newprops&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;// after uploading new version I want to update also the metadata‍‍‍‍‍‍‍‍‍‍&lt;/SPAN&gt;&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And I encountered:&lt;/P&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;project-acs_1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp; org.activiti.engine.ActivitiException: Exception while invoking TaskListener: Exception while invoking TaskListener: 08020024 The current version label of the node does not exist in the version history.‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN style="color: #ff6600;"&gt;This error occurs &lt;STRONG&gt;AFTER&lt;/STRONG&gt; the first version change (so only when this code is executed 2 or more times)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------&lt;/P&gt;&lt;P&gt;After seeing &lt;SPAN style="text-decoration: underline;"&gt;some errors&lt;/SPAN&gt; i tried to add:&lt;/P&gt;&lt;PRE class="language-java line-numbers"&gt;&lt;CODE&gt;String newVersionLabel &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; String&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;valueOf&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;Float&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;valueOf&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt; currentVersion&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;getVersionLabel&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0.1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;&lt;BR /&gt;versionprops&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;put&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;VersionModel&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;PROP_VERSION_LABEL&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; newVersionLabel&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;But it resulted in other errors:&lt;/P&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;project-acs_1       |  org.activiti.engine.ActivitiException: Exception while invoking TaskListener: Exception while invoking TaskListener: The version property name versionLabel clashes with a reserved verison property name.&lt;BR /&gt;‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------&lt;/P&gt;&lt;P&gt;I also tried to change the node ref:&lt;/P&gt;&lt;PRE class="language-java line-numbers"&gt;&lt;CODE&gt;NodeRef docNode &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="keyword token"&gt;new&lt;/SPAN&gt; &lt;SPAN class="token class-name"&gt;NodeRef&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;versionservice&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;getVersionStoreReference&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; docNode&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;getId&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt; ‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;But it does not exists and throws and error:&lt;/P&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;Caused by: org.activiti.engine.ActivitiException: Exception while invoking TaskListener: Node does not exist: workspace://version2Store/534aa85c-1466-4ead-a950-2d8b24e51945 (status:null)‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;I do not know how to get the proper node id (&lt;EM&gt;docNode.getId()&lt;/EM&gt; returns diffrend id)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anyone know what am i doing wrong?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 02 Sep 2019 20:00:07 GMT</pubDate>
    <dc:creator>upforsin</dc:creator>
    <dc:date>2019-09-02T20:00:07Z</dc:date>
    <item>
      <title>How to upload a new version using Java API ?</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-upload-a-new-version-using-java-api/m-p/113614#M31596</link>
      <description>Hello,How can i upload a new version of the document using Java API?There are two services which may be useful in this case. CheckOutCheckInService and VersionService.The second one seemed to be more appropriate.This was my initial code:Version currentVersion = versionservice.getCurrentVersion(docNo</description>
      <pubDate>Mon, 02 Sep 2019 20:00:07 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-upload-a-new-version-using-java-api/m-p/113614#M31596</guid>
      <dc:creator>upforsin</dc:creator>
      <dc:date>2019-09-02T20:00:07Z</dc:date>
    </item>
    <item>
      <title>Re: How to upload a new version using Java API ?</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-upload-a-new-version-using-java-api/m-p/113615#M31597</link>
      <description>&lt;P&gt;Did you find a solution ?&lt;/P&gt;</description>
      <pubDate>Thu, 21 Oct 2021 07:21:22 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-upload-a-new-version-using-java-api/m-p/113615#M31597</guid>
      <dc:creator>AlfrescoZZZ</dc:creator>
      <dc:date>2021-10-21T07:21:22Z</dc:date>
    </item>
    <item>
      <title>Re: How to upload a new version using Java API ?</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/how-to-upload-a-new-version-using-java-api/m-p/113616#M31598</link>
      <description>&lt;P&gt;That should be still working with current versions:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://github.com/keensoft/alfresco-firma-pdf/blob/64acee0a574e601000d290b0d5b8a5f8be563989/src/alfresco-components/sign-document/src/main/java/es/keensoft/alfresco/sign/webscript/SaveSign.java#L115" target="_blank" rel="nofollow noopener noreferrer"&gt;https://github.com/keensoft/alfresco-firma-pdf/blob/64acee0a574e601000d290b0d5b8a5f8be563989/src/alfresco-components/sign-document/src/main/java/es/keensoft/alfresco/sign/webscript/SaveSign.java#L115&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 21 Oct 2021 10:47:43 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/how-to-upload-a-new-version-using-java-api/m-p/113616#M31598</guid>
      <dc:creator>angelborroy</dc:creator>
      <dc:date>2021-10-21T10:47:43Z</dc:date>
    </item>
  </channel>
</rss>

