In java delegate,
I have code like this
logger.info(getOutputList.toString());
execution.getProcessInstance().setVariable(“output”, getOutputList);
In my application i wanna get my output back:
public StatusOutput getProcessInstanceStatus(String piId) {
HistoricProcessInstanceQuery query = historyService.createHistoricProcessInstanceQuery()
.processInstanceId(piId.toString());
HistoricProcessInstance pi = query.singleResult();
JsonObject jsonObject = new JsonObject();
jsonObject.add(“Workflow-status”, new JsonPrimitive(pi.getState()));
if(pi.getState().equals(“COMPLETED”)) {
List executions = runtimeService.createExecutionQuery().executionId(piId).list();
Execution execution = executions.get(0); //check if null or empty
ArrayList strList = (ArrayList) runtimeService.getVariable(execution.getId(), “output”);
System.out.println(strList);
}
return new StatusOutput(jsonObject, new JsonObject());
}
Could you please correct what I have done wrong?