Невозможно сгенерировать аннотации @NotNull для полей / свойств.Вместо этого он генерируется методом получения.Это вызывает проблему нулевых значений, которые могут быть установлены для сгенерированного POJO.Есть ли способ, которым мы можем генерировать поведение NotNull на уровне полей / свойств / установщика.
Используется Swagger: 2.0 с загрузкой Spring 2.0.3 и Java 8
Пробное useBeanValidation: true и recursiveBeanValidation:правда.Не помогло.
api.yml
Notification:
type: object
description: 'Error or notification'
properties:
source:
type: string
example: SOL
description: 'System or sub-system that caused the fault'
required:
- source
Swagger codeGen Задача в build.gradle
task generateApi {
inputs.file("$projectDir/$swaggerSourceFile")
outputs.dir("$projectDir/$swaggerTargetFolder")
doLast {
def config = new CodegenConfigurator()
config.setInputSpec("XXX")
config.setOutputDir("$projectDir")
config.setLang('spring')
config.setAdditionalProperties([
'interfaceOnly' : 'true',
'modelPackage' : 'bla.bla',
'apiPackage' : 'bla.bla',
'sourceFolder' : swaggerTargetFolder,
'useBeanValidation': true,
'modelNameSuffix' : 'Dto',
'delegatePattern' : 'false',
'dateLibrary' : 'java8',
])
new
DefaultGenerator().opts(config.toClientOptInput()).generate()
}
}