From 0f1559cc7ae83073b2e9cdef41fb79aa6852cef5 Mon Sep 17 00:00:00 2001 From: Janos Haber Date: Thu, 4 May 2023 10:00:46 +0200 Subject: [PATCH] - [x] Fix Batch API internal error --- .../fineract/batch/service/BatchApiServiceImpl.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/fineract-provider/src/main/java/org/apache/fineract/batch/service/BatchApiServiceImpl.java b/fineract-provider/src/main/java/org/apache/fineract/batch/service/BatchApiServiceImpl.java index 0ef2b2ac6..f84a08c15 100644 --- a/fineract-provider/src/main/java/org/apache/fineract/batch/service/BatchApiServiceImpl.java +++ b/fineract-provider/src/main/java/org/apache/fineract/batch/service/BatchApiServiceImpl.java @@ -217,7 +217,10 @@ public class BatchApiServiceImpl implements BatchApiService { BatchCallHandler callHandler = new BatchCallHandler(this.batchFilters, commandStrategy::execute); if (BatchRequestContextHolder.getEnclosingTransaction().isPresent()) { if (BatchRequestContextHolder.getEnclosingTransaction().get().isRollbackOnly()) { - return new BatchResponse(); + BatchResponse br = new BatchResponse(); + br.setBody("Parent request was erroneous!"); + br.setRequestId(request.getRequestId()); + return br; } entityManager.flush(); } @@ -314,7 +317,11 @@ public class BatchApiServiceImpl implements BatchApiService { errResponse.setBody("Transaction is being rolled back. First erroneous request: \n" + new Gson().toJson(res)); errResponse.setRequestId(res.getRequestId()); if (statusCode == -1) { - statusCode = res.getStatusCode(); + if (res.getStatusCode() != null) { + statusCode = res.getStatusCode(); + } else { + statusCode = Status.INTERNAL_SERVER_ERROR.getStatusCode(); + } } break; }