Description
When I execute the code generation using version 3.0.8 is works just fine.
java -jar swagger-codegen-cli-3.0.8.jar generate -i TS29571_CommonData.yaml -l spring -o GENERATED_COMMON_08
However, when the same command is tried with latest version, it does not work.
java -jar swagger-codegen-cli-3.0.9.jar generate -i TS29571_CommonData.yaml -l spring -o GENERATED_COMMON_09
Corresponding logs can be seen below:
`
14:51:15.423 [Thread-1] WARN io.swagger.codegen.v3.generators.java.AbstractJavaCodegen - Double (reserved word) cannot be used as model name. Renamed to ModelDouble
Exception in thread "Thread-1" java.lang.RuntimeException: Could not process model 'PatchOperation'.Please make sure that your schema is correct!
at io.swagger.codegen.v3.DefaultGenerator.generateModels(DefaultGenerator.java:378)
at io.swagger.codegen.v3.DefaultGenerator.generate(DefaultGenerator.java:756)
at io.swagger.codegen.v3.cli.cmd.Generate.run(Generate.java:342)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at io.swagger.codegen.v3.generators.util.OpenAPIUtil.getSimpleRef(OpenAPIUtil.java:32)
at io.swagger.codegen.v3.generators.SchemaHandler.configureAnyOfModel(SchemaHandler.java:75)
at io.swagger.codegen.v3.generators.DefaultCodegenConfig.fromModel(DefaultCodegenConfig.java:1374)
at io.swagger.codegen.v3.generators.java.AbstractJavaCodegen.fromModel(AbstractJavaCodegen.java:895)
at io.swagger.codegen.v3.DefaultGenerator.processModels(DefaultGenerator.java:988)
at io.swagger.codegen.v3.DefaultGenerator.generateModels(DefaultGenerator.java:349)
`
Corresponding API Element
PatchOperation: anyOf: - type: string enum: - add - copy - move - remove - replace - test - type: stringSwagger-codegen version
3.0.9
Swagger declaration file content or urlhttps://github.com/jdegre/5GC_APIs
Common Data is giving the exception - Matching - Common Data
PatchOperation: anyOf: - type: string enum: - add - copy - move - remove - replace - test - type: stringCommand line used for generation
Below command works fine:
java -jar swagger-codegen-cli-3.0.8.jar generate -i TS29571_CommonData.yaml -l spring -o GENERATED_COMMON_08
Below line when tried with 3.0.9 breaks it:
java -jar swagger-codegen-cli-3.0.9.jar generate -i TS29571_CommonData.yaml -l spring -o GENERATED_COMMON_09
`
14:51:15.423 [Thread-1] WARN io.swagger.codegen.v3.generators.java.AbstractJavaCodegen - Double (reserved word) cannot be used as model name. Renamed to ModelDouble
Exception in thread "Thread-1" java.lang.RuntimeException: Could not process model 'PatchOperation'.Please make sure that your schema is correct!
at io.swagger.codegen.v3.DefaultGenerator.generateModels(DefaultGenerator.java:378)
at io.swagger.codegen.v3.DefaultGenerator.generate(DefaultGenerator.java:756)
at io.swagger.codegen.v3.cli.cmd.Generate.run(Generate.java:342)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at io.swagger.codegen.v3.generators.util.OpenAPIUtil.getSimpleRef(OpenAPIUtil.java:32)
at io.swagger.codegen.v3.generators.SchemaHandler.configureAnyOfModel(SchemaHandler.java:75)
at io.swagger.codegen.v3.generators.DefaultCodegenConfig.fromModel(DefaultCodegenConfig.java:1374)
at io.swagger.codegen.v3.generators.java.AbstractJavaCodegen.fromModel(AbstractJavaCodegen.java:895)
at io.swagger.codegen.v3.DefaultGenerator.processModels(DefaultGenerator.java:988)
at io.swagger.codegen.v3.DefaultGenerator.generateModels(DefaultGenerator.java:349)
`
The corresponding JAR's hwere downloaded from Maven Central https://repo1.maven.org/maven2/io/swagger/codegen/v3/swagger-codegen-cli/
Related issues/PRsNone
Suggest a fix/enhancementIt looks specific to handling of the anyOf allOf kind of tags.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4