diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfiguration.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfiguration.java index 784e18a9db68..6494f14ce764 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfiguration.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfiguration.java @@ -84,7 +84,8 @@ public void customize(GsonBuilder builder) { .toCall(builder::generateNonExecutableJson); map.from(properties::getExcludeFieldsWithoutExposeAnnotation) .toCall(builder::excludeFieldsWithoutExposeAnnotation); - map.from(properties::getSerializeNulls).toCall(builder::serializeNulls); + map.from(properties::getSerializeNulls).whenTrue() + .toCall(builder::serializeNulls); map.from(properties::getEnableComplexMapKeySerialization) .toCall(builder::enableComplexMapKeySerialization); map.from(properties::getDisableInnerClassSerialization) diff --git a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfigurationTests.java b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfigurationTests.java index 3a3fda5bea0c..ab3029d0778d 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/gson/GsonAutoConfigurationTests.java @@ -80,7 +80,7 @@ public void excludeFieldsWithoutExposeAnnotation() { } @Test - public void serializeNulls() { + public void serializeNullsTrue() { this.contextRunner.withPropertyValues("spring.gson.serialize-nulls:true") .run((context) -> { Gson gson = context.getBean(Gson.class); @@ -88,6 +88,15 @@ public void serializeNulls() { }); } + @Test + public void serializeNullsFalse() { + this.contextRunner.withPropertyValues("spring.gson.serialize-nulls:false") + .run((context) -> { + Gson gson = context.getBean(Gson.class); + assertThat(gson.serializeNulls()).isFalse(); + }); + } + @Test public void enableComplexMapKeySerialization() { this.contextRunner