Skip to content

Commit 9abc9bb

Browse files
committed
OpenAPI Extensions no longer work. Fixes #2104
1 parent 5ad5087 commit 9abc9bb

File tree

3 files changed

+8
-2
lines changed

3 files changed

+8
-2
lines changed

springdoc-openapi-starter-common/src/main/java/org/springdoc/core/service/OpenAPIService.java

+4
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
import java.util.stream.Collectors;
4343
import java.util.stream.Stream;
4444

45+
import com.fasterxml.jackson.annotation.JsonInclude.Include;
4546
import com.fasterxml.jackson.core.JsonProcessingException;
4647
import com.fasterxml.jackson.databind.ObjectMapper;
4748
import io.swagger.v3.core.jackson.TypeNameResolver;
@@ -245,6 +246,9 @@ public OpenAPI build(Locale locale) {
245246
try {
246247
ObjectMapper objectMapper = ObjectMapperProvider.createJson(springDocConfigProperties);
247248
calculatedOpenAPI = objectMapper.readValue(objectMapper.writeValueAsString(openAPI), OpenAPI.class);
249+
objectMapper.setSerializationInclusion(Include.NON_EMPTY);
250+
Map extensionsClone = objectMapper.readValue(objectMapper.writeValueAsString(openAPI.getExtensions()), Map.class);
251+
calculatedOpenAPI.extensions(extensionsClone);
248252
}
249253
catch (JsonProcessingException e) {
250254
LOGGER.warn("Json Processing Exception occurred: {}", e.getMessage());

springdoc-openapi-starter-webmvc-api/src/test/java/test/org/springdoc/api/v30/app173/SpringDocApp173Test.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
package test.org.springdoc.api.v30.app173;
2626

2727
import java.util.Locale;
28+
import java.util.Map;
2829

2930
import io.swagger.v3.oas.models.OpenAPI;
3031
import org.junit.jupiter.api.Test;
@@ -67,7 +68,7 @@ private void testApp(Locale locale) throws Exception {
6768
static class SpringDocTestApp {
6869
@Bean
6970
public OpenAPI openAPI() {
70-
return new OpenAPI();
71+
return new OpenAPI().extensions(Map.of("TEST", "HELLO"));
7172
}
7273
}
7374

springdoc-openapi-starter-webmvc-api/src/test/resources/results/3.0.1/app173.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,6 @@
2525
}
2626
}
2727
},
28-
"components": {}
28+
"components": {},
29+
"TEST": "HELLO"
2930
}

0 commit comments

Comments
 (0)