Intro
В простом и голом проекте с загрузочной пружиной у меня есть один класс модели с одним свойством типа java.time.LocalTime
.
Если я запускаю проект, springfox обнаруживает LocalTime
какне встроенный класс и помещает его в definitions
.
{
"ExampleDto": {
"type": "object",
"properties": {
"time": {
"$ref": "#/definitions/LocalTime"
}
}
}
}
Не то, что я хочу.
То, что я на самом деле хочу
... естьиметь свойство типа string с пользовательским форматом с именем «time», например:
{
"ExampleDto": {
"type": "object",
"properties": {
"time": {
"type": "string",
"format": "time"
}
}
}
}
Что я мог бы придумать
Если я добавлю AlternateTypeRule
изLocalTime
до String
, я получаю только половину того, что хочу.
{
"ExampleDto": {
"type": "object",
"properties": {
"time": {
"type": "string"
}
}
}
}
Конечно, я также экспериментировал со многими вещами, но мне так и не удалось установить «формат» свойства.Я обнаружил, что каким-то образом вызов конструктора io.swagger.models.properties.StringProperty#StringProperty(java.lang.String)
с аргументом time в качестве аргумента поможет, но я не могу понять, как этого добиться.
Я создал проект на github, чтобы продемонстрировать свою проблему.https://github.com/LorenzSchumann/springfoxshowcase