Переопределение представления LocalTime в springdoc
Столкнулся с проблемой представления LocalTime в swagger(использую springdoc).
To, что было изначально:
Dto, где возникла проблема:
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class SessionDto {
private Long sessionID;
private Long filmID;
private Long chatID;
private Long organizerID;
private LocalTime stopTime;
}
Начальное представление этого dto в swagger:
После прочтения этого issue мне удалось избавиться от объектного представления LocalTime. Для этого я создал такую конфигурацию:
@Configuration
public class SwaggerConfig {
static {
SpringDocUtils.getConfig().replaceWithClass(LocalTime.class, String.class);
}
}
Представление dto после добавления конфигурации:
Но кроме всего этого, я хочу, чтобы вместо "string" в качестве примера значения поля stopTime отображалось что-то типа "00:00:00"(В идеале текущее время). Возможно ли это сделать?
Ответы (1 шт):
Автор решения: Anton Kolesov
→ Ссылка
Решил проблему следующим конфигом:
@Configuration
public class SwaggerConfig {
static {
var schema = new Schema<LocalTime>();
schema.example(LocalTime.now().format(DateTimeFormatter.ofPattern("HH:mm:ss")));
SpringDocUtils.getConfig().replaceWithSchema(LocalTime.class, schema);
}
}

