Я читал о настраиваемых исключениях, а также:
Thorben предлагает здесь: https://stackify.com/java-custom-exceptions/#wpautbox_about
Здесь предлагается Baeldung: https://www.baeldung.com/java-new-custom-exception
Пользовательское исключение должно быть более выгодным, чем исходное исключение, иначе оно потеряет свое назначение. Для этого мы всегда должны передавать вызываемую причину в собственное исключение. В моем приложении указаны перечисления c ErrorCode
, в которых есть собственный код ошибки и настраиваемое сообщение.
@Getter
@AllArgsConstructor
public enum ErrorType {
DATABASE_SERVICE_UNAVAILABLE(9001, "Cant persist to Database"),
//and more...
private final int errorCode;
private final String errorMessage;
}
Что я должен отправить в качестве ответа при написании сопоставителя исключений?
1) Пользовательское перечисление кодов ошибок (только код ошибки и сообщение об ошибке)
ИЛИ
2) Пользовательское перечисление кодов ошибок + Возможная причина (оба)
Если мы не отправим throwable, какова будет его цель?