diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomGetFormModelByProcessInstanceIdCmd.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomGetFormModelByProcessInstanceIdCmd.java index 18c8b9e42..20313aa25 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomGetFormModelByProcessInstanceIdCmd.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomGetFormModelByProcessInstanceIdCmd.java @@ -8,9 +8,11 @@ import org.flowable.form.api.FormInfo; import org.flowable.form.api.FormInstance; import org.flowable.form.api.FormRepositoryService; import org.flowable.form.api.FormService; +import org.springframework.util.CollectionUtils; import java.io.Serializable; import java.util.HashMap; +import java.util.List; import java.util.Map; /** @@ -38,8 +40,12 @@ public class CustomGetFormModelByProcessInstanceIdCmd extends AbstractCommand list = formService.createFormInstanceQuery().processInstanceId(processInstanceId).orderBySubmittedDate().desc().list(); + if (CollectionUtils.isEmpty(list)) { + return null; + } + + String formDefinitionId = list.get(0).getFormDefinitionId(); FormRepositoryService formRepositoryService = formEngineConfiguration.getFormRepositoryService(); return formRepositoryService.getFormModelById(formDefinitionId); } diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java index f91d3101e..6078f29a7 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/web/manage/PrintAdminController.java @@ -346,7 +346,7 @@ public class PrintAdminController implements PrintAdminApi { } private void convertValueToObject(Map result, FormInfo formInfo) { - if (CollectionUtils.isEmpty(result)) { + if (CollectionUtils.isEmpty(result) || Objects.isNull(formInfo)) { return; } Map stringFormFieldMap = ((SimpleFormModel) formInfo.getFormModel()).allFieldsAsMap();