swagger-api / swagger-api/swagger-codegen
refer to properties in $ref get Compilation error in generated class although it is valid swagger yml
Nessuno ha ancora preso questa issue.
- Lingua principale
- Mustache
- Stelle
- 17.8k
- Fork
- 6k
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
From @noha-gamal on February 12, 2019 13:56
Q&A (please complete the following information)
- OS: [e.g. Windows 10 Enterprise]
- Browser: [e.g. chrome]
- Version: [e.g. 71.0.3578.98]
- Method of installation: [use online swagger editor https://editor.swagger.io/]
- Swagger/OpenAPI version: [e.g. Swagger 2.0, OpenAPI 3.0]
Content & configuration
Example Swagger/OpenAPI definition:
swagger: '2.0'
host: api.vodafone.com
basePath: '/{access}/eligibleProductOfferingAPI/v2'
schemes:
- https
consumes:
- application/json
produces:
- application/json
info:
title: 'Common Service Model API: EligibleProductOffering'
version: 2.1.0
paths:
/eligibleProductOffering:
get:
tags:
- eligibleProductOffering
description: >-
A method that allows a consumer of the API to get-list a
EligibleProductOffering representation.
operationId: getList
produces:
- application/json
responses:
'204':
description: '204, No Content.'
definitions:
eligibleProductOfferingVBOProductOffering:
properties:
id:
type: array
minItems: 1
items:
$ref: '#/definitions/BasicComponents/properties/IDType'
name:
type: string
description: ' The name of the instance of a business object or component.'
BasicComponents:
properties:
IDType:
type: object
properties:
value:
type: string
description: The value of the field.
schemeID:
type: string
schemeName:
type: string
schemeAgencyName:
type: string
required:
- value
Describe the bug you're encountering
Bug is in class EligibleProductOfferingVBOProductOffering.java get id attribute
private List id = null;
where class BasicComponentspropertiesIDType not found.
expected attribute id with type BasicComponentsIDType
To reproduce...
Steps to reproduce the behavior:
- Go to 'https://editor.swagger.io/'
- Paste above yml
4.Click on Generate Server then Spring
5.Spring-server-generated.zip downloaded, open it and go to spring-server\src\main\java\io\swagger\model\EligibleProductOfferingVBOProductOffering.java - Found compilation error in class generated.
Expected behavior
expected that id attribute in EligibleProductOfferingVBOProductOffering.java be
private List id = null;
instead of
private List id = null;
Copied from original issue: swagger-api/swagger-ui#5175
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Riprodurre il problema in https://editor.swagger.io/ con il YAML Swagger 2.0 fornito, quindi esaminare il file generato spring-server/src/main/java/io/swagger/model/EligibleProductOfferingVBOProductOffering.java. Confrontare la dichiarazione id generata con il riferimento BasicComponentsIDType previsto e verificare che il server Spring generato venga compilato senza la classe BasicComponentspropertiesIDType mancante.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java, spring
- Ambito
- backend-api-design, tooling
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 35/100