Java 8 LocalDate отображается в чванстве

У меня есть DTO, который содержит поле типа Java 8 LocalDate. С аннотациями Джексона можно установить формат ISO.DATE, и все работает хорошо. Но Swagger (у меня версия 2.+) видит LocalDate.class как объект

LocalDate {
month (integer, optional),
year (integer, optional)
}

(Это правда, но...) Я хочу представить это как строку с форматом, так как это работает с util.Date. Как я могу это решить?


person Nikita    schedule 10.11.2016    source источник


Ответы (1)


Я столкнулся с той же проблемой, поэтому я добавил

@Bean
public Docket docket() {
    return new Docket(DocumentationType.SWAGGER_2)
                .groupName("name")
                .directModelSubstitute(LocalDateTime.class, String.class)
                .directModelSubstitute(LocalDate.class, String.class)
                .directModelSubstitute(LocalTime.class, String.class)
                .directModelSubstitute(ZonedDateTime.class, String.class)
                .apiInfo(apiInfo())
                .select()
                .paths(paths())
                .build();
}

в конфигурации докета.

directModelSubstitute заставляет чванливо относиться к LocalDate как к String классу

person staszek    schedule 10.11.2016
comment
пожалуйста, сделайте отступ в коде правильно, чтобы предотвратить прокрутку - person Nicolas Filotto; 10.11.2016