Перехватывать и обрабатывать org.springframework.dao.QueryTimeoutException весной MVC - PullRequest
0 голосов
/ 08 октября 2019

Я пытаюсь обработать и настроить базу данных без сообщения об ошибке подключения, когда база данных недоступна. В моем тесте я получил следующее сообщение об ошибке:

enter image description here

Я использую

@ControllerAdvice
public class RestExceptionHandler extends ResponseEntityExceptionHandler 

со следующим ExceptionHandlerметоды:

    @ExceptionHandler(TimeoutException.class)
    public ResponseEntity<String> databaseError1(final TimeoutException e) {
        return new ResponseEntity<>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
    }

    @ExceptionHandler( org.springframework.dao.QueryTimeoutException.class)
    public ResponseEntity<String> databaseError2(final TimeoutException e) {
        return new ResponseEntity<>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
    }

    @ExceptionHandler( RuntimeException.class)
    public ResponseEntity<String> databaseError3(final TimeoutException e) {
        return new ResponseEntity<>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);
    }

Но я не могу перехватить эти ошибки своими контрольными точками. Есть ли способ справиться с этим? Я видел, что он обрабатывается классом CouchbaseTemplate.

Спасибо!

...