Workflow Processing to Abort and Join Processes

To abort the process instance and join the data into specified target process instance, use joinProcessInstance method of the WorkflowService.

  /**
    * Aborts the specified process instance and joins the data into the specified target process instance.
    * Existing data values of the target process instance are not overwritten. Process attachments are merged.
    *
    * @param processInstanceOid The oid of the process instance which should be aborted and joined into the target process instance.
    * @param targetProcessInstanceOid The oid of the process instance that should be the target of the join.
    * @param comment Allows specifying a comment.
    * @return The target process instance.
    */
   @ExecutionPermission(
         id=ExecutionPermission.Id.abortProcessInstances,
         scope=ExecutionPermission.Scope.processDefinition,
         defer=true)
   public ProcessInstance joinProcessInstance(long processInstanceOid,
         long targetProcessInstanceOid, String comment);
 
 

The required permission to execute this method is joinProcessInstance.

Note that when using the API to abort and join a process, you may get ConcurrencyException. In that case, wait for sometime and retry the API call.