Генератор OpenAPI: неправильный формат для примера значения типа данных даты. Можно ли настроить? - PullRequest
1 голос
/ 15 января 2020

Я использую openapi-generator последней версии ( 4.2.2 ) для генерации Java Spring API. Конфигурация выглядит следующим образом:

openApiGenerate {
    generatorName = "spring"
    inputSpec = "${projectDir}/src/main/resources/api/users-spec.yaml"
    outputDir = "${buildDir}/generated/open-api"
    apiPackage = "com.example.accounts.api"
    invokerPackage = "com.example.accounts.handler"
    modelPackage = "com.example.accounts.model"
    modelNameSuffix = "Json"
    configOptions = [
            delegatePattern: "true"
    ]
}

Я обнаружил, что определения, содержащие типы данных date с примерами значений, производят по-разному отформатированные значения в выходных моделях Java.

definitions:
  User:
    properties:
      birthday:
        description: Date of birth
        type: string
        format: date
        example: "2020-01-01"

сгенерированная модель:

  @ApiModelProperty(example = "Wed Jan 01 03:00:00 MSK 2020", value = "Date of birth")
  @Valid
  public LocalDate getBirthday() {
    return birthday;
  }

После создания пользовательского интерфейса swagger с springfox (2.9.2) Пример запроса у меня {"birthday": "Wed Jan 01 03:00:00 MSK 2020"}. Это сбивает с толку, потому что стандартный десериализатор даты Джексона не может десериализовать такую ​​ценность. Могу ли я иметь пример значения в формате гггг-мм-дд ?

...