Skip to content

Commit a0c5712

Browse files
committed
Exception during WebFlux tests: NoClassDefFoundError: KotlinModule$Builder. Fixes #2114
1 parent 0f41f55 commit a0c5712

File tree

5 files changed

+35
-14
lines changed

5 files changed

+35
-14
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package org.springdoc.core.configuration;
2+
3+
import com.fasterxml.jackson.module.kotlin.KotlinModule;
4+
import com.fasterxml.jackson.module.kotlin.KotlinModule.Builder;
5+
import org.springdoc.core.providers.ObjectMapperProvider;
6+
7+
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
8+
import org.springframework.context.annotation.Configuration;
9+
import org.springframework.context.annotation.Lazy;
10+
11+
/**
12+
* The type Spring doc kotlin module configuration.
13+
*
14+
* @author bnasslahsen
15+
*/
16+
@Lazy(false)
17+
@Configuration(proxyBeanMethods = false)
18+
@ConditionalOnClass(KotlinModule.class)
19+
class SpringDocJacksonKotlinModuleConfiguration {
20+
21+
/**
22+
* Instantiates a new Spring doc kotlin module configuration.
23+
*
24+
* @param objectMapperProvider the object mapper provider
25+
*/
26+
public SpringDocJacksonKotlinModuleConfiguration(ObjectMapperProvider objectMapperProvider) {
27+
objectMapperProvider.jsonMapper()
28+
.registerModule(new Builder().build());
29+
}
30+
}

springdoc-openapi-starter-common/src/main/java/org/springdoc/core/configuration/SpringDocKotlinConfiguration.kt

-10
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.springdoc.core.configuration
22

3-
import com.fasterxml.jackson.module.kotlin.KotlinModule
43
import io.swagger.v3.oas.annotations.Parameter
54
import io.swagger.v3.oas.models.media.ByteArraySchema
65
import org.springdoc.core.customizers.ParameterCustomizer
@@ -43,15 +42,6 @@ open class SpringDocKotlinConfiguration(objectMapperProvider: ObjectMapperProvid
4342
* @param objectMapperProvider Object Mapper Provider
4443
* @return the nullable Kotlin Request Parameter Customizer
4544
*/
46-
@Lazy(false)
47-
@Configuration(proxyBeanMethods = false)
48-
@ConditionalOnClass(KotlinModule::class)
49-
class SpringDocKotlinModuleConfiguration(objectMapperProvider: ObjectMapperProvider) {
50-
init {
51-
objectMapperProvider.jsonMapper()
52-
.registerModule(KotlinModule.Builder().build())
53-
}
54-
}
5545

5646
/**
5747
* Instantiates a new Spring doc kotlin configuration.

springdoc-openapi-starter-common/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports

+2-1
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,5 @@ org.springdoc.core.configuration.SpringDocPageableConfiguration
1010
org.springdoc.core.configuration.SpringDocSortConfiguration
1111
org.springdoc.core.configuration.SpringDocDataRestConfiguration
1212
org.springdoc.core.configuration.SpringDocKotlinConfiguration
13-
org.springdoc.core.configuration.SpringDocKotlinxConfiguration
13+
org.springdoc.core.configuration.SpringDocKotlinxConfiguration
14+
org.springdoc.core.configuration.SpringDocJacksonKotlinModuleConfiguration

springdoc-openapi-tests/springdoc-openapi-actuator-webflux-tests/src/test/java/test/org/springdoc/api/app144/SpringDocApp144Test.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@
3131

3232
@SpringBootTest(webEnvironment = WebEnvironment.DEFINED_PORT,
3333
properties = { "management.endpoints.web.exposure.include:*",
34-
"server.port=52554",
34+
"server.port=52555",
3535
"springdoc.use-management-port=true",
36-
"management.server.port=9290",
36+
"management.server.port=9289",
3737
"management.endpoints.web.base-path=/application" })
3838
public class SpringDocApp144Test extends AbstractSpringDocActuatorTest {
3939

springdoc-openapi-tests/springdoc-openapi-actuator-webflux-tests/src/test/resources/results/app144.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
},
77
"servers": [
88
{
9-
"url": "http://localhost:52554",
9+
"url": "http://localhost:52555",
1010
"description": "Generated server url"
1111
}
1212
],

0 commit comments

Comments
 (0)