Я пишу тесты для компонента, который является параметром в методе @RestController
. Боб POJO:
public class AddTownRequestBean
{
@NotEmpty(message = "INVALID_REQUEST")
@Length(min = 1, max = 30, message = "PARAMETER_OUT_OF_BOUNDS")
private String name;
@NotEmpty(message = "INVALID_REQUEST")
@Length(min = 3, max = 4, message = "PARAMETER_OUT_OF_BOUNDS")
private String typeCreated;
@DateTimeFormat(pattern = "yyyy-MM-dd") //style = "S-", iso = DateTimeFormat.ISO.DATE,
private String foundationDate;
getters and setters...
}
Мой вопрос связан с аннотацией @DateTimeFormat
. В документации указано, что эта аннотация:
Может применяться к java.util.Date, java.util.Calendar, Long (для отметок времени в миллисекундах), а также к JSR. -310 типов значений java.time и Joda-Time.
Как видно, поддержка простого типа String
не поддерживается, но поле даты в моем POJO равно String
. Я уже тестировал, используя @DateTimeFormat
, как описано выше, также с закомментированными параметрами, каждый раз взаимно исключаемыми. И, очевидно, это не сработало.
Таким образом, сам вопрос - есть ли аннотация или подобный обходной путь для добавления (давайте назовем это) «валидатора» для определенного формата даты в переменной типа String
, котораядолжно быть свидание?