From 98b5a7fdb72f1a0722b0d2a5196766add53f700d Mon Sep 17 00:00:00 2001 From: Pallavi Priyadarshani <50460471+pallavi-priyadarshani@users.noreply.github.com> Date: Fri, 2 Aug 2019 16:24:59 +0530 Subject: [PATCH] BAEL-3005 | updated exception handler --- .../ConstraintViolationExceptionHandler.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/spring-mvc-simple-2/src/main/java/com/baeldung/validation/listvalidation/exception/ConstraintViolationExceptionHandler.java b/spring-mvc-simple-2/src/main/java/com/baeldung/validation/listvalidation/exception/ConstraintViolationExceptionHandler.java index 067a0e08ac..742be27f61 100644 --- a/spring-mvc-simple-2/src/main/java/com/baeldung/validation/listvalidation/exception/ConstraintViolationExceptionHandler.java +++ b/spring-mvc-simple-2/src/main/java/com/baeldung/validation/listvalidation/exception/ConstraintViolationExceptionHandler.java @@ -14,17 +14,23 @@ import org.springframework.web.bind.annotation.RestControllerAdvice; @RestControllerAdvice public class ConstraintViolationExceptionHandler { - private final Logger LOGGER = LoggerFactory.getLogger(ConstraintViolationExceptionHandler.class); + + private final Logger logger = LoggerFactory.getLogger(ConstraintViolationExceptionHandler.class); @ExceptionHandler(ConstraintViolationException.class) public ResponseEntity handle(ConstraintViolationException constraintViolationException) { Set> violations = constraintViolationException.getConstraintViolations(); - StringBuilder builder = new StringBuilder(); - for (ConstraintViolation violation : violations) { - builder.append(violation.getMessage()); - + String errorMessage = ""; + if (!violations.isEmpty()) { + StringBuilder builder = new StringBuilder(); + violations.forEach(violation -> builder.append("\n" + violation.getMessage())); + errorMessage = builder.toString(); + } else { + errorMessage = "ConstraintViolationException occured."; } - LOGGER.error(builder.toString()); - return new ResponseEntity(builder.toString(), HttpStatus.BAD_REQUEST); + + logger.error(errorMessage); + return new ResponseEntity<>(errorMessage, HttpStatus.BAD_REQUEST); } + }