swagger-api/swagger-codegen
View on GitHubSpring Model POJOs not being generated for matching schemas with different titles.
Open
#5,171 opened on Mar 22, 2017
General: QuestionServer: Springhelp wanted
Description
Description
Not sure why, but when I create two path that have identical structures other than the name of the title, only the first titled object is generated.
Swagger-codegen version
Codegen 2.2.2:
Swagger declaration file content or url
swagger: '2.0'
info:
title: API
version: "0.0.1"
paths:
/app/alive:
get:
responses:
'200':
description: OK
schema:
title: AppHealthCheckResult
properties:
header:
$ref: '#/definitions/ResponseHeader'
result:
$ref: '#/definitions/GenericKeyValue'
/app/config:
get:
responses:
'200':
description: OK
schema:
title: GetAppConfigKeyResponse
properties:
header:
$ref: '#/definitions/ResponseHeader'
result:
$ref: '#/definitions/GenericKeyValue'
definitions:
ResponseHeader:
type: object
properties:
request-id:
type: string
description: Header for all response
GenericKeyValue:
type: object
properties:
name:
type: string
description: something
Command line used for generation
java -jar ../tools/swagger-codegen-cli-2.2.2.jar generate -i missing-models.yaml -l spring
Steps to reproduce
Using above the following is rendered...
I would also expect a model for GetAppConfigKeyResponse.java to be created.
[main] INFO io.swagger.parser.Swagger20Parser - reading from missing-models.yaml
[main] WARN io.swagger.codegen.ignore.CodegenIgnoreProcessor - Directory does not exist, or is inaccessible. No file will be evaluated.
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/model/AppHealthCheckResult.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/model/GenericKeyValue.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/model/ResponseHeader.java
[main] WARN io.swagger.codegen.DefaultCodegen - Empty operationId found for path: get /app/alive. Renamed to auto-generated operationId: appAliveGet
[main] WARN io.swagger.codegen.DefaultCodegen - Empty operationId found for path: get /app/config. Renamed to auto-generated operationId: appConfigGet
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/api/AppApiController.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/api/AppApi.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/pom.xml
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/README.md
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/configuration/HomeController.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/Swagger2SpringBoot.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/RFC3339DateFormat.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/resources/application.properties
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/api/ApiException.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/api/ApiResponseMessage.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/api/NotFoundException.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/api/ApiOriginFilter.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/src/main/java/io/swagger/configuration/SwaggerDocumentationConfig.java
[main] INFO io.swagger.codegen.AbstractGenerator - writing file /Users/roberhr/demo/codegen-bug/target/.swagger-codegen-ignore
##### Suggest a Fix
I'm not sure but it seems to me like there is a map collision or something.