Exclude Jackson XML from String encoding/decoding

Closes gh-36775
This commit is contained in:
rstoyanchev
2026-06-05 14:36:05 +01:00
parent 6ca66afc7b
commit 95bd3f7c67
7 changed files with 16 additions and 4 deletions
@@ -90,6 +90,7 @@ class JacksonJsonEncoderTests extends AbstractEncoderTests<JacksonJsonEncoder> {
// SPR-15910
assertThat(this.encoder.canEncode(ResolvableType.forClass(Object.class), APPLICATION_OCTET_STREAM)).isFalse();
assertThat(this.encoder.canEncode(ResolvableType.forClass(String.class), null)).isFalse();
assertThatThrownBy(() -> this.encoder.canEncode(ResolvableType.forClass(MappingJacksonValue.class), APPLICATION_JSON))
.isInstanceOf(UnsupportedOperationException.class);
@@ -59,7 +59,7 @@ class JacksonXmlDecoderTests extends AbstractDecoderTests<JacksonXmlDecoder> {
assertThat(decoder.canDecode(ResolvableType.forClass(Pojo.class), MediaType.TEXT_XML)).isTrue();
assertThat(decoder.canDecode(ResolvableType.forClass(Pojo.class), new MediaType("application", "soap+xml"))).isTrue();
assertThat(decoder.canDecode(ResolvableType.forClass(Pojo.class), null)).isTrue();
assertThat(decoder.canDecode(ResolvableType.forClass(String.class), null)).isTrue();
assertThat(decoder.canDecode(ResolvableType.forClass(String.class), null)).isFalse();
assertThat(decoder.canDecode(ResolvableType.forClass(Pojo.class), MediaType.APPLICATION_JSON)).isFalse();
}
@@ -52,7 +52,7 @@ class JacksonXmlEncoderTests extends AbstractLeakCheckingTests {
assertThat(this.encoder.canEncode(pojoType, MediaType.TEXT_XML)).isTrue();
assertThat(this.encoder.canEncode(pojoType, new MediaType("application", "soap+xml"))).isTrue();
assertThat(this.encoder.canEncode(pojoType, null)).isTrue();
assertThat(this.encoder.canEncode(ResolvableType.forClass(String.class), null)).isTrue();
assertThat(this.encoder.canEncode(ResolvableType.forClass(String.class), null)).isFalse();
assertThat(this.encoder.canEncode(ResolvableType.NONE, null)).isTrue();
assertThat(this.encoder.canEncode(ResolvableType.forClass(Pojo.class), MediaType.APPLICATION_JSON)).isFalse();
}