У меня возникла проблема, когда я не могу принять неправильный формат даты.
Например:
Если запрос API получает дату «2019-14-10», я не могу его принять. Прямо сейчас, когда я получаю это, JsonFormat выдает мне 2020-02-10.
Чтобы решить эту проблему, я добавил lenient=OptBoolean.FALSE, как показано здесь:
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd", timezone = "America/Vancouver", lenient = OptBoolean.FALSE)
private Date effectiveDate;
Теперь проблема в том, что когда я вызываю API, передавая неправильную дату (2019-14-10), я просто получаю ответ на запрос 400 Bad.
Можно ли создать собственный ответ на эту проверку?
Например, могу ли я вернуть что-то вроде этого:
{
"code": {
"value": 4,
"name": "InvalidRequest"
},
"message": "{effectiveDate=Date is invalid. Please choose a valid date}"
}
Или хотя бы сообщение об ошибке.