1
resposta

Tratando erros gerais

Podemos tratar os erros criando métodos específicos em 'controllers' para tratar as 'exceptions' conforme a necessidade ou ainda criar uma classe do tipo controller com a anotation @Controlleradvice, considerando que vai tratar todas as Exceptions e direciona os erros para a área de comentários e uma mensagem para a interface de usuário clara e objetiva.

1 resposta

No Spring é mais interessante usar @ControllerAdvice com @ExceptionHandler, exemplo: https://www.baeldung.com/exception-handling-for-rest-with-spring

@ControllerAdvice
public class RestResponseEntityExceptionHandler 
  extends ResponseEntityExceptionHandler {

    @ExceptionHandler(value = { IllegalArgumentException.class, IllegalStateException.class })
    protected ResponseEntity<Object> handleConflict(
      RuntimeException ex, WebRequest request) {
        String bodyOfResponse = "This should be application specific";
        return handleExceptionInternal(ex, bodyOfResponse, 
          new HttpHeaders(), HttpStatus.CONFLICT, request);
    }
}