From ee4e79002bda440f76740099a7e9b225e7f727ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Deleuze?= Date: Fri, 1 May 2026 18:56:16 +0200 Subject: [PATCH] Add trusted packages to MappingJackson2MessageConverter This commit introduces trusted packages, specified via the related setter for untrusted use cases. It allows explicit configuration of which Java packages are allowed to be deserialized. Closes gh-36792 --- .../MappingJackson2MessageConverter.java | 38 +++++++++ .../MappingJackson2MessageConverterTests.java | 82 +++++++++++++++++++ 2 files changed, 120 insertions(+) diff --git a/spring-jms/src/main/java/org/springframework/jms/support/converter/MappingJackson2MessageConverter.java b/spring-jms/src/main/java/org/springframework/jms/support/converter/MappingJackson2MessageConverter.java index 8b045d54221..66e9f774591 100644 --- a/spring-jms/src/main/java/org/springframework/jms/support/converter/MappingJackson2MessageConverter.java +++ b/spring-jms/src/main/java/org/springframework/jms/support/converter/MappingJackson2MessageConverter.java @@ -21,6 +21,7 @@ import java.io.IOException; import java.io.OutputStreamWriter; import java.io.StringWriter; import java.io.UnsupportedEncodingException; +import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -49,6 +50,8 @@ import org.springframework.util.ClassUtils; * {@link #setTargetType targetType} is set to {@link MessageType#TEXT}. * Converts from a {@link TextMessage} or {@link BytesMessage} to an object. * + *

For untrusted environments, use {@link #setTrustedPackages(String...)}. + * *

It customizes Jackson's default properties with the following ones: *