Publish to Alfresco task fails if the File Attach option "Just link to files, do not copy files to Alfresco Process Services" is checked. During execution it throws an error then.
Steps to reproduce
- Install APS 18.104.22.168 and ACS 6.1.0.
- Start APS and ACS running.
- On ACS, login to Alfresco Share (http://localhost:8181/share) for default admin, and create a new test site, called 'My test site', under Document Library, create two new folders: "Select to Publish" and "Published from APS", you will need these for later APS test to reproduce issue.
- Add/Upload a couple test files into "Select to Publish" folder - which can be used for later test in APS during Attach Files task.
- Leave "Published from APS" folder empty in ACS repository.
- On APS, login to Activiti-App UI (http://localhost:8080/activiti-app) as default APS user: firstname.lastname@example.org .
- Navigate to Identity Management > Tenants > Alfresco Repositories, add new repository to connect to running ACS 6.1.0.
- Navigate to Identity Management > Personal > Alfresco Repositories, you should now see the ACS 6.1.0 repository listed, click to enter ACS username and login credential for default admin.
- Navigate to App Designer > Apps, import the attached 'SimplePublish-ProblematicSample.zip'
- Edit the embedded Process model 'simplePublish-problematicSample' using Visual Editor, update the Alfresco destination to point to folder path, e.g. ACS 6.1 > My Test Site > Document Library > Published from APS.
- Click to view Start Event, click and open 'Referenced form', click to edit 'SelectDocument' Attach File field, under 'Attach File option' , you can see second checkbox 'Just link to files, do not copy files to Alfresco Process Services (this also means files cannot be uploaded from one of a user's devices)' is checked. This is one of the two requirement to reproduce this issue. Leave it as it is.
- Save the Process Model after you applied #10 changes, republish your imported app with newest Process Model included (with valid Alfresco Destination path changes).
- Start a new process of the published 'SimplePublish-ProblematicSample' app from homepage (http://localhost:8080/activiti-app/#/).
- In the SelectDocument - you only have option to Select document from ACS repository for upload - click on the 'Alfresco flower icon' Choose Site > My test site > documentLibrary > Select to Publish, click to select any uploaded files in that ACS site folder path. Click 'Start Process' button. This is second requirement to reproduce this issue, must select a document for upload from different ACS repository path than your publish to alfresco destination path set to.
- Click on 'Show Diagram' of the running process details page, you will notice it was stuck at later 'Publish to Alfresco' task and unable to complete this. See screenshots of problematic behavior.
- Check activiti-app.log and you will see an exception similar to:
12583502 [pool-2-thread-1] ERROR o.a.e.i.a.ExecuteAsyncRunnable - Job 5122 failed
org.activiti.engine.ActivitiException: Related content store id not yet persisted acs2.txt, 1009
See full error snippet in attached activiti-app-error-snippet.log.
The "Publish to Alfresco" task should complete successfully without any error. The attached file was published to Alfresco under
ACS 6.1 > My Test Site > Document Library > Published from APS.
Workaround: Use attached SimplePublish-WorkingSample.zip - Everything is same as SimplePublish-ProblematicSample.zip, except the only difference is really at referenced form in Start Event for Attach Files field, under Attach File Options - I have unchecked the second checkbox 'Just link to files, do not copy files to Alfresco Process Services (this also means files cannot be uploaded from one of a user's devices)'. Follow all same steps and you will see everything is working properly then without error.