From 81f21d9affd4c513d8f8c5871cd9238313186460 Mon Sep 17 00:00:00 2001 From: Kevin Raddatz Date: Wed, 9 Dec 2020 10:27:24 +0100 Subject: [PATCH] Typesave serialization of openapi spec --- .../java/org/springdoc/api/AbstractOpenApiResource.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/springdoc-openapi-common/src/main/java/org/springdoc/api/AbstractOpenApiResource.java b/springdoc-openapi-common/src/main/java/org/springdoc/api/AbstractOpenApiResource.java index b59bef950..42fa088e8 100644 --- a/springdoc-openapi-common/src/main/java/org/springdoc/api/AbstractOpenApiResource.java +++ b/springdoc-openapi-common/src/main/java/org/springdoc/api/AbstractOpenApiResource.java @@ -109,6 +109,7 @@ /** * The type Abstract open api resource. * @author bnasslahsen + * @author kevinraddatz */ public abstract class AbstractOpenApiResource extends SpecFilter { @@ -1033,9 +1034,9 @@ protected String writeYamlValue(OpenAPI openAPI) throws JsonProcessingException YAMLFactory factory = (YAMLFactory) objectMapper.getFactory(); factory.configure(Feature.USE_NATIVE_TYPE_ID, false); if (!springDocConfigProperties.isWriterWithDefaultPrettyPrinter()) - result = objectMapper.writeValueAsString(openAPI); + result = objectMapper.writerFor(OpenAPI.class).writeValueAsString(openAPI); else - result = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(openAPI); + result = objectMapper.writerWithDefaultPrettyPrinter().forType(OpenAPI.class).writeValueAsString(openAPI); return result; } @@ -1096,9 +1097,9 @@ protected String writeJsonValue(OpenAPI openAPI) throws JsonProcessingException if (springDocConfigProperties.isWriterWithOrderByKeys()) sortOutput(objectMapper); if (!springDocConfigProperties.isWriterWithDefaultPrettyPrinter()) - result = objectMapper.writeValueAsString(openAPI); + result = objectMapper.writerFor(OpenAPI.class).writeValueAsString(openAPI); else - result = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(openAPI); + result = objectMapper.writerWithDefaultPrettyPrinter().forType(OpenAPI.class).writeValueAsString(openAPI); return result; }