Ich realisiere meine zweite API mit swagger/swagger-codegen. Nach einem wirklich guten Start mit meinem ersten, die bin ich etwas mit dem folgende Problem stecken: ich mehrere Definitionen wie die folgenden habe:swagger-codegen einfache Modelle fehlen
TopIssueReference:
description: Id of a top issue
type: string
example:
itemid: 'd32c1213-4773-442e-9c5f-f5d516358869'
All diese Definitionen nur sind Aliasnamen für Typen String, einig mit Format Datum-Zeit, einige nackt wie die oben genannte.
Der Swagger-Editor ist in Ordnung mit diesen Definitionen.
Wenn ich eine von ihnen in einer $ref
Klausel innerhalb einer Objektdefinition verwende, erzeugt der Generator in diesem Fall einen Verweis auf eine Klasse, die wie meine Definition TopIssueReference
benannt ist.
Die erzeugte TopIssueReference
Klasse ist die folgende (in Java):
@ApiModel(description = "Id of a top issue")
public class TopIssueReference {
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class TopIssueReference {");
sb.append("}");
return sb.toString();
}
}
, die nicht wirklich nützlich ist.
Hat jemand eine Idee, was hier schief läuft? Sollte der Generator nicht entweder einen Verweis auf einen String erzeugen oder zumindest TopIssueReference
von einer Zeichenkette ableiten (wie nützlich das auch sein mag)?
Für einige dieser Definitionen generiert der Generator überhaupt keine Klasse - aber die Referenzen sind immer noch da, so dass der resultierende Code nicht einmal kompiliert.
Ich habe versucht, Server und Clients mit Java und Python zu generieren, und beide haben das gleiche Problem.
Sieht aus wie ein bekanntes Problem: [# 2314] (https://github.com/swagger-api/swagger-codegen/issues/2314), [# 3483] (https://github.com/swagger- api/swagger-codegen/issues/3483) – Helen
Danke, ich habe das selbst nicht gefunden, aber es beschreibt genau mein Problem. – Gottfried
Können Sie den letzten Meister versuchen? SNAPSHOT kann in der README gefunden werden. Ich erinnere mich, dass es eine PR gibt, die das angeht, aber ich könnte falsch liegen. –