Мне нужно делать разные вещи в зависимости от того, какое исключение я поймаю, вот два метода, которые я выучил, которые можно использовать:
Метод1:
try{
..
..
}catch(SocketTimeoutExceptione){
//do something
}
catch(RunTimeException e){
//do something
}
Метод 2:
try{
}
catch(RunTimeException e){
if (e instanceof SocketTimeoutException) {
LOGGER.error(e);
}else {
LOGGER.error(e);
//do something
}
}
Я получаю следующее исключение, которое является известной проблемой с подключением: Возникло исключение org.springframework.web.client.ResourceAccessException: ошибка ввода-вывода при выполнении запроса POST для «теста»: истекло время ожидания;Вложенное исключение - java.net.SocketTimeoutException: Тайм-аут чтения
Метод 1 недопустим, так как он все равно войдет в блок исключения времени выполнения.В методе 2 я не могу проверить, является ли это экземпляром исключения во время выполнения, так как исключение сокета не является его частью.Как мне справиться с этим в этом случае