swagger-api / swagger-api/swagger-codegen
refer to properties in $ref get Compilation error in generated class although it is valid swagger yml
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Mustache
- Sterne
- 17.8k
- Forks
- 6k
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
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
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Reproduzieren Sie das Problem unter https://editor.swagger.io/ mit der bereitgestellten Swagger 2.0 YAML-Datei und prüfen Sie anschließend die generierte Datei spring-server/src/main/java/io/swagger/model/EligibleProductOfferingVBOProductOffering.java. Vergleichen Sie die generierte id-Deklaration mit der erwarteten BasicComponentsIDType-Referenz und verifizieren Sie, dass der generierte Spring-Server ohne die fehlende BasicComponentspropertiesIDType-Klasse kompiliert.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java, spring
- Bereich
- backend-api-design, tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 35/100