diff --git a/framework-docs/src/main/java/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.java b/framework-docs/src/main/java/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.java
index 63326e903a..7555aebc8e 100644
--- a/framework-docs/src/main/java/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.java
+++ b/framework-docs/src/main/java/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.java
@@ -25,6 +25,7 @@ import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig;
import org.springframework.test.web.servlet.assertj.MockMvcTester;
import org.springframework.web.context.WebApplicationContext;
+@SuppressWarnings("removal")
// tag::snippet[]
@SpringJUnitWebConfig(ApplicationWebConfiguration.class)
class AccountControllerIntegrationTests {
diff --git a/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.java b/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.java
index 019a99a270..3517b3275e 100644
--- a/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.java
+++ b/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.java
@@ -28,6 +28,7 @@ import org.springframework.http.converter.json.MappingJackson2HttpMessageConvert
import org.springframework.http.converter.xml.MappingJackson2XmlHttpMessageConverter;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+@SuppressWarnings("removal")
// tag::snippet[]
@Configuration
public class WebConfiguration implements WebMvcConfigurer {
diff --git a/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.java b/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.java
index 0d949748a3..1c1122713e 100644
--- a/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.java
+++ b/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.java
@@ -23,6 +23,7 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer;
import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
+@SuppressWarnings("removal")
// tag::snippet[]
@Configuration
public class FreeMarkerConfiguration implements WebMvcConfigurer {
diff --git a/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.java b/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.java
index c4d27f555e..57592d5614 100644
--- a/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.java
+++ b/framework-docs/src/main/java/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.java
@@ -21,6 +21,7 @@ import org.springframework.web.servlet.config.annotation.ViewResolverRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.view.json.MappingJackson2JsonView;
+@SuppressWarnings("removal")
// tag::snippet[]
@Configuration
public class WebConfiguration implements WebMvcConfigurer {
diff --git a/framework-docs/src/main/kotlin/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.kt b/framework-docs/src/main/kotlin/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.kt
index 523d728941..196d6a63db 100644
--- a/framework-docs/src/main/kotlin/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.kt
+++ b/framework-docs/src/main/kotlin/org/springframework/docs/testing/mockmvc/assertj/mockmvctestersetup/converter/AccountControllerIntegrationTests.kt
@@ -1,5 +1,5 @@
/*
- * Copyright 2002-2024 the original author or authors.
+ * Copyright 2002-2025 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -14,6 +14,8 @@
* limitations under the License.
*/
+@file:Suppress("DEPRECATION")
+
package org.springframework.docs.testing.mockmvc.assertj.mockmvctestersetup.converter
import org.springframework.beans.factory.annotation.Autowired
diff --git a/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.kt b/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.kt
index 12c197a46f..c1993d1208 100644
--- a/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.kt
+++ b/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigmessageconverters/WebConfiguration.kt
@@ -1,3 +1,5 @@
+@file:Suppress("DEPRECATION")
+
package org.springframework.docs.web.webmvc.mvcconfig.mvcconfigmessageconverters
import com.fasterxml.jackson.module.paramnames.ParameterNamesModule
diff --git a/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.kt b/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.kt
index 55acaa63cb..5e300f7222 100644
--- a/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.kt
+++ b/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/FreeMarkerConfiguration.kt
@@ -1,3 +1,5 @@
+@file:Suppress("DEPRECATION")
+
package org.springframework.docs.web.webmvc.mvcconfig.mvcconfigviewresolvers
import org.springframework.context.annotation.Bean
diff --git a/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.kt b/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.kt
index 472ecf25bf..1b60cb562b 100644
--- a/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.kt
+++ b/framework-docs/src/main/kotlin/org/springframework/docs/web/webmvc/mvcconfig/mvcconfigviewresolvers/WebConfiguration.kt
@@ -14,6 +14,8 @@
* limitations under the License.
*/
+@file:Suppress("DEPRECATION")
+
package org.springframework.docs.web.webmvc.mvcconfig.mvcconfigviewresolvers
import org.springframework.context.annotation.Configuration
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 f45a140f1c..e8449c3c7a 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
@@ -60,7 +60,9 @@ import org.springframework.util.ClassUtils;
* @author Juergen Hoeller
* @author Stephane Nicoll
* @since 3.1.4
+ * @deprecated since 7.0 in favor of {@link JacksonJsonMessageConverter}
*/
+@Deprecated(since = "7.0", forRemoval = true)
public class MappingJackson2MessageConverter implements SmartMessageConverter, BeanClassLoaderAware {
/**
diff --git a/spring-messaging/src/main/java/org/springframework/messaging/converter/MappingJackson2MessageConverter.java b/spring-messaging/src/main/java/org/springframework/messaging/converter/MappingJackson2MessageConverter.java
index 88a89fa95b..819bd2343a 100644
--- a/spring-messaging/src/main/java/org/springframework/messaging/converter/MappingJackson2MessageConverter.java
+++ b/spring-messaging/src/main/java/org/springframework/messaging/converter/MappingJackson2MessageConverter.java
@@ -56,7 +56,9 @@ import org.springframework.util.MimeType;
* @author Juergen Hoeller
* @author Sebastien Deleuze
* @since 4.0
+ * @deprecated since 7.0 in favor of {@link JacksonJsonMessageConverter}
*/
+@Deprecated(since = "7.0", forRemoval = true)
public class MappingJackson2MessageConverter extends AbstractMessageConverter {
private static final MimeType[] DEFAULT_MIME_TYPES = new MimeType[] {
diff --git a/spring-messaging/src/main/java/org/springframework/messaging/simp/config/AbstractMessageBrokerConfiguration.java b/spring-messaging/src/main/java/org/springframework/messaging/simp/config/AbstractMessageBrokerConfiguration.java
index 1ca3cea244..7ccf4664ef 100644
--- a/spring-messaging/src/main/java/org/springframework/messaging/simp/config/AbstractMessageBrokerConfiguration.java
+++ b/spring-messaging/src/main/java/org/springframework/messaging/simp/config/AbstractMessageBrokerConfiguration.java
@@ -535,6 +535,7 @@ public abstract class AbstractMessageBrokerConfiguration implements ApplicationC
/**
* Allow to customize Jackson 2.x JSON converter.
*/
+ @SuppressWarnings("removal")
protected MappingJackson2MessageConverter createJacksonConverter() {
DefaultContentTypeResolver resolver = new DefaultContentTypeResolver();
resolver.setDefaultMimeType(MimeTypeUtils.APPLICATION_JSON);
diff --git a/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java b/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java
index 0f3cc097dd..a3a5624417 100644
--- a/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java
+++ b/spring-messaging/src/test/java/org/springframework/messaging/converter/MappingJackson2MessageConverterTests.java
@@ -43,6 +43,7 @@ import static org.assertj.core.api.Assertions.within;
* @author Rossen Stoyanchev
* @author Sebastien Deleuze
*/
+@SuppressWarnings("removal")
class MappingJackson2MessageConverterTests {
@Test
diff --git a/spring-web/src/jmh/java/org/springframework/http/codec/json/Jackson2JsonEncoderBenchmark.java b/spring-web/src/jmh/java/org/springframework/http/codec/json/Jackson2JsonEncoderBenchmark.java
index 2a6602af60..037f94ba96 100644
--- a/spring-web/src/jmh/java/org/springframework/http/codec/json/Jackson2JsonEncoderBenchmark.java
+++ b/spring-web/src/jmh/java/org/springframework/http/codec/json/Jackson2JsonEncoderBenchmark.java
@@ -43,6 +43,7 @@ import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder;
* @see AbstractJackson2Encoder
*/
@BenchmarkMode(Mode.Throughput)
+@SuppressWarnings("removal")
public class Jackson2JsonEncoderBenchmark {
diff --git a/spring-web/src/main/java/org/springframework/http/codec/AbstractJacksonEncoder.java b/spring-web/src/main/java/org/springframework/http/codec/AbstractJacksonEncoder.java
index 01efc689d3..d33f91ff16 100644
--- a/spring-web/src/main/java/org/springframework/http/codec/AbstractJacksonEncoder.java
+++ b/spring-web/src/main/java/org/springframework/http/codec/AbstractJacksonEncoder.java
@@ -111,6 +111,7 @@ public abstract class AbstractJacksonEncoder extends JacksonCodecSupport impleme
}
@Override
+ @SuppressWarnings("removal")
public boolean canEncode(ResolvableType elementType, @Nullable MimeType mimeType) {
if (!supportsMimeType(mimeType)) {
return false;
diff --git a/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborDecoder.java b/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborDecoder.java
index babbf48a69..b57b33ed7e 100644
--- a/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborDecoder.java
+++ b/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborDecoder.java
@@ -40,7 +40,10 @@ import org.springframework.util.MimeType;
* @since 5.2
* @see Jackson2CborEncoder
* @see Add CBOR support to WebFlux
+ * @deprecated since 7.0 in favor of {@link JacksonCborDecoder}
*/
+@Deprecated(since = "7.0", forRemoval = true)
+@SuppressWarnings("removal")
public class Jackson2CborDecoder extends AbstractJackson2Decoder {
public Jackson2CborDecoder() {
diff --git a/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborEncoder.java b/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborEncoder.java
index 2da7e3a7c2..ccd58cd491 100644
--- a/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborEncoder.java
+++ b/spring-web/src/main/java/org/springframework/http/codec/cbor/Jackson2CborEncoder.java
@@ -41,7 +41,10 @@ import org.springframework.util.MimeType;
* @since 5.2
* @see Jackson2CborDecoder
* @see Add CBOR support to WebFlux
+ * @deprecated since 7.0 in favor of {@link JacksonCborEncoder}
*/
+@Deprecated(since = "7.0", forRemoval = true)
+@SuppressWarnings("removal")
public class Jackson2CborEncoder extends AbstractJackson2Encoder {
public Jackson2CborEncoder() {
diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Decoder.java b/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Decoder.java
index 23b8b1a37f..1624781ecc 100644
--- a/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Decoder.java
+++ b/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Decoder.java
@@ -47,6 +47,7 @@ import org.springframework.core.io.buffer.DataBufferLimitException;
import org.springframework.core.io.buffer.DataBufferUtils;
import org.springframework.core.io.buffer.PooledDataBuffer;
import org.springframework.core.log.LogFormatUtils;
+import org.springframework.http.codec.AbstractJacksonDecoder;
import org.springframework.http.codec.HttpMessageDecoder;
import org.springframework.http.server.reactive.ServerHttpRequest;
import org.springframework.http.server.reactive.ServerHttpResponse;
@@ -61,7 +62,10 @@ import org.springframework.util.MimeType;
* @author Arjen Poutsma
* @since 5.0
* @see Add support for non-blocking ("async") JSON parsing
+ * @deprecated since 7.0 in favor of {@link AbstractJacksonDecoder}
*/
+@Deprecated(since = "7.0", forRemoval = true)
+@SuppressWarnings("removal")
public abstract class AbstractJackson2Decoder extends Jackson2CodecSupport implements HttpMessageDecoder