Wie kann ich die generierte OpenAPI-Spezifikation in Prahlerei (JAX-RS + OpenAPireSource) durch ein benutzerdefiniertes

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie kann ich die generierte OpenAPI-Spezifikation in Prahlerei (JAX-RS + OpenAPireSource) durch ein benutzerdefiniertes

by Anonymous » 01 Jul 2025, 12:17

Ich benutze Swagger mit Jersey (JAX-RS), um API-Dokumentation zu bedienen. Ich konfiguriere Swagger wie folgt: < /p>

Code: Select all

ResourceConfig swaggerResourceConfig = new ResourceConfig()
.packages("io.swagger.v3.jaxrs2.integration.resources")
.register(OpenApiResource.class)
.register(SwaggerSerializers.class)
.register(AcceptHeaderOpenApiResource.class)
.property("jersey.config.server.wadl.disableWadl", true);

SwaggerConfiguration oasConfig = new SwaggerConfiguration()
.openApi(baseModel) // 
[code]public OpenAPI patchMissingDescriptions(OpenAPI openAPI) {
if (openAPI.getPaths() != null) {
for (Entry entry : openAPI.getPaths().entrySet()) {
for (Operation operation : entry.getValue().readOperations()) {
if (operation.getResponses() != null) {
for (Entry respEntry : operation.getResponses().entrySet()) {
ApiResponse response = respEntry.getValue();
if (response.getDescription() == null) {
response.setDescription("some description");
}
}
}
}
}
}
return openAPI;
}
< /code>
 Problem: < /strong> < /p>
[list]
[*] Ich muss P aufrufenatchMissingDescriptions()
Nach dem Erstellen des OpenAPI -Modells dient jedoch vor Jersey die JSON/YAML -Dokumente. Für < /strong> < /p>

Ein Verlängerungspunkt in Swagger-Core- oder JAX-RS-Integration, mit dem ich das In-Memory-OpenAPI-Objekt genau einmal mutieren kann, nachdem es gebaut wurde, aber bevor es zwischengespeichert wurde /serialisiert. ohne die Scan -Logik zu duplizieren. (läuft nach der Serialisierung).
[/list]

Top