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 { private int maxInMemorySize = 256 * 1024; diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Encoder.java b/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Encoder.java index 587d8a7ef2..c05c81611a 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Encoder.java +++ b/spring-web/src/main/java/org/springframework/http/codec/json/AbstractJackson2Encoder.java @@ -50,6 +50,7 @@ import org.springframework.core.io.buffer.DataBuffer; import org.springframework.core.io.buffer.DataBufferFactory; import org.springframework.core.log.LogFormatUtils; import org.springframework.http.MediaType; +import org.springframework.http.codec.AbstractJacksonEncoder; import org.springframework.http.codec.HttpMessageEncoder; import org.springframework.http.converter.json.MappingJacksonValue; import org.springframework.http.server.reactive.ServerHttpRequest; @@ -66,7 +67,10 @@ import org.springframework.util.MimeType; * @author Sebastien Deleuze * @author Arjen Poutsma * @since 5.0 + * @deprecated since 7.0 in favor of {@link AbstractJacksonEncoder} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public abstract class AbstractJackson2Encoder extends Jackson2CodecSupport implements HttpMessageEncoder { private static final byte[] NEWLINE_SEPARATOR = {'\n'}; diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2CodecSupport.java b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2CodecSupport.java index e9388e6f5a..1b42f23caa 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2CodecSupport.java +++ b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2CodecSupport.java @@ -40,6 +40,7 @@ import org.springframework.core.codec.Hints; import org.springframework.http.HttpLogging; import org.springframework.http.MediaType; import org.springframework.http.ProblemDetail; +import org.springframework.http.codec.JacksonCodecSupport; import org.springframework.http.server.reactive.ServerHttpRequest; import org.springframework.http.server.reactive.ServerHttpResponse; import org.springframework.util.Assert; @@ -53,7 +54,9 @@ import org.springframework.util.ObjectUtils; * @author Sebastien Deleuze * @author Rossen Stoyanchev * @since 5.0 + * @deprecated since 7.0 in favor of {@link JacksonCodecSupport} */ +@Deprecated(since = "7.0", forRemoval = true) public abstract class Jackson2CodecSupport { /** diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonDecoder.java b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonDecoder.java index 15a266c50b..8dc8836907 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonDecoder.java +++ b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonDecoder.java @@ -31,6 +31,7 @@ import org.springframework.core.ResolvableType; import org.springframework.core.codec.CharBufferDecoder; import org.springframework.core.io.buffer.DataBuffer; import org.springframework.core.io.buffer.DefaultDataBufferFactory; +import org.springframework.http.codec.AbstractJacksonDecoder; import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.util.MimeType; import org.springframework.util.MimeTypeUtils; @@ -43,7 +44,10 @@ import org.springframework.util.MimeTypeUtils; * @author Rossen Stoyanchev * @since 5.0 * @see Jackson2JsonEncoder + * @deprecated since 7.0 in favor of {@link AbstractJacksonDecoder} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class Jackson2JsonDecoder extends AbstractJackson2Decoder { private static final CharBufferDecoder CHAR_BUFFER_DECODER = CharBufferDecoder.textPlainOnly(Arrays.asList(",", "\n"), false); diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonEncoder.java b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonEncoder.java index 5276ae9e7e..15f8cf8c98 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonEncoder.java +++ b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2JsonEncoder.java @@ -44,7 +44,10 @@ import org.springframework.util.MimeType; * @author Arjen Poutsma * @since 5.0 * @see Jackson2JsonDecoder + * @deprecated since 7.0 in favor of {@link JacksonJsonEncoder} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class Jackson2JsonEncoder extends AbstractJackson2Encoder { private static final List problemDetailMimeTypes = diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileDecoder.java b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileDecoder.java index e58a3b0a50..d705f71dfb 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileDecoder.java +++ b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileDecoder.java @@ -19,6 +19,7 @@ package org.springframework.http.codec.json; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.smile.SmileFactory; +import org.springframework.http.codec.smile.JacksonSmileDecoder; import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.util.Assert; import org.springframework.util.MimeType; @@ -31,7 +32,10 @@ import org.springframework.util.MimeType; * @author Rossen Stoyanchev * @since 5.0 * @see Jackson2JsonEncoder + * @deprecated since 7.0 in favor of {@link JacksonSmileDecoder} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class Jackson2SmileDecoder extends AbstractJackson2Decoder { private static final MimeType[] DEFAULT_SMILE_MIME_TYPES = new MimeType[] { diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileEncoder.java b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileEncoder.java index c79fe25cce..6f220174f0 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileEncoder.java +++ b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2SmileEncoder.java @@ -25,6 +25,7 @@ import org.jspecify.annotations.Nullable; import reactor.core.publisher.Flux; import org.springframework.http.MediaType; +import org.springframework.http.codec.smile.JacksonSmileEncoder; import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.util.Assert; import org.springframework.util.MimeType; @@ -37,7 +38,10 @@ import org.springframework.util.MimeType; * @author Sebastien Deleuze * @since 5.0 * @see Jackson2SmileDecoder + * @deprecated since 7.0 in favor of {@link JacksonSmileEncoder} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class Jackson2SmileEncoder extends AbstractJackson2Encoder { private static final MimeType[] DEFAULT_SMILE_MIME_TYPES = new MimeType[] { diff --git a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2Tokenizer.java b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2Tokenizer.java index dc16bcd77a..e26f4fcf59 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2Tokenizer.java +++ b/spring-web/src/main/java/org/springframework/http/codec/json/Jackson2Tokenizer.java @@ -50,7 +50,9 @@ import org.springframework.core.io.buffer.DataBufferUtils; * @author Rossen Stoyanchev * @author Juergen Hoeller * @since 5.0 + * @deprecated since 7.0 in favor of {@code org.springframework.http.codec.JacksonTokenizer} */ +@Deprecated(since = "7.0", forRemoval = true) final class Jackson2Tokenizer { private final JsonParser parser; diff --git a/spring-web/src/main/java/org/springframework/http/codec/support/BaseDefaultCodecs.java b/spring-web/src/main/java/org/springframework/http/codec/support/BaseDefaultCodecs.java index 7243bafe57..fb5cc06224 100644 --- a/spring-web/src/main/java/org/springframework/http/codec/support/BaseDefaultCodecs.java +++ b/spring-web/src/main/java/org/springframework/http/codec/support/BaseDefaultCodecs.java @@ -486,6 +486,7 @@ class BaseDefaultCodecs implements CodecConfigurer.DefaultCodecs, CodecConfigure * if configured by the application, to the given codec , including any * codec it contains. */ + @SuppressWarnings("removal") private void initCodec(@Nullable Object codec) { if (codec instanceof DecoderHttpMessageReader decoderHttpMessageReader) { codec = decoderHttpMessageReader.getDecoder(); @@ -612,6 +613,7 @@ class BaseDefaultCodecs implements CodecConfigurer.DefaultCodecs, CodecConfigure * Reset and initialize object readers. * @since 5.3.3 */ + @SuppressWarnings("removal") protected void initObjectReaders() { this.objectReaders.clear(); if (!this.registerDefaults) { @@ -760,6 +762,7 @@ class BaseDefaultCodecs implements CodecConfigurer.DefaultCodecs, CodecConfigure /** * Return "base" object writers only, i.e. common to client and server. */ + @SuppressWarnings("removal") final List> getBaseObjectWriters() { List> writers = new ArrayList<>(); if (kotlinSerializationCborPresent) { @@ -839,6 +842,7 @@ class BaseDefaultCodecs implements CodecConfigurer.DefaultCodecs, CodecConfigure return this.jacksonJsonDecoder; } + @SuppressWarnings("removal") protected Decoder getJackson2JsonDecoder() { if (this.jackson2JsonDecoder == null) { this.jackson2JsonDecoder = new Jackson2JsonDecoder(); @@ -853,6 +857,7 @@ class BaseDefaultCodecs implements CodecConfigurer.DefaultCodecs, CodecConfigure return this.jacksonJsonEncoder; } + @SuppressWarnings("removal") protected Encoder getJackson2JsonEncoder() { if (this.jackson2JsonEncoder == null) { this.jackson2JsonEncoder = new Jackson2JsonEncoder(); diff --git a/spring-web/src/main/java/org/springframework/http/converter/AbstractJacksonHttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/AbstractJacksonHttpMessageConverter.java index fca8911bad..a49320e575 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/AbstractJacksonHttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/AbstractJacksonHttpMessageConverter.java @@ -271,6 +271,7 @@ public abstract class AbstractJacksonHttpMessageConverter extends AbstractSmartH } @Override + @SuppressWarnings("removal") public boolean canWrite(Class clazz, @Nullable MediaType mediaType) { if (!canWrite(mediaType)) { return false; @@ -328,6 +329,7 @@ public abstract class AbstractJacksonHttpMessageConverter extends AbstractSmartH return readJavaType(javaType, inputMessage, null); } + @SuppressWarnings("removal") private Object readJavaType(JavaType javaType, HttpInputMessage inputMessage, @Nullable Map hints) throws IOException { MediaType contentType = inputMessage.getHeaders().getContentType(); Charset charset = getCharset(contentType); diff --git a/spring-web/src/main/java/org/springframework/http/converter/cbor/MappingJackson2CborHttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/cbor/MappingJackson2CborHttpMessageConverter.java index 6e0b808db6..c5ea389025 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/cbor/MappingJackson2CborHttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/cbor/MappingJackson2CborHttpMessageConverter.java @@ -39,7 +39,10 @@ import org.springframework.util.Assert; * * @author Sebastien Deleuze * @since 5.0 + * @deprecated since 7.0 in favor of {@link JacksonCborHttpMessageConverter} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class MappingJackson2CborHttpMessageConverter extends AbstractJackson2HttpMessageConverter { /** diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/AbstractJackson2HttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/json/AbstractJackson2HttpMessageConverter.java index 29ca5d018d..85209689f5 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/AbstractJackson2HttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/AbstractJackson2HttpMessageConverter.java @@ -57,6 +57,7 @@ import org.springframework.http.HttpOutputMessage; import org.springframework.http.MediaType; import org.springframework.http.ProblemDetail; import org.springframework.http.converter.AbstractGenericHttpMessageConverter; +import org.springframework.http.converter.AbstractJacksonHttpMessageConverter; import org.springframework.http.converter.HttpMessageConversionException; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.HttpMessageNotReadableException; @@ -78,7 +79,10 @@ import org.springframework.util.TypeUtils; * @author Sam Brannen * @since 4.1 * @see MappingJackson2HttpMessageConverter + * @deprecated since 7.0 in favor of {@link AbstractJacksonHttpMessageConverter} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public abstract class AbstractJackson2HttpMessageConverter extends AbstractGenericHttpMessageConverter { private static final Map ENCODINGS; diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilder.java b/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilder.java index a4eaa7ec59..7f3a75115a 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilder.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilder.java @@ -100,8 +100,10 @@ import org.springframework.util.xml.StaxUtils; * @since 4.1.1 * @see #build() * @see #configure(ObjectMapper) - * @see Jackson2ObjectMapperFactoryBean + * @deprecated since 7.0 in favor using directly Jackson 3 builders like {@link tools.jackson.databind.json.JsonMapper#builder} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class Jackson2ObjectMapperBuilder { private static final boolean jackson2XmlPresent = ClassUtils.isPresent( diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBean.java b/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBean.java index 2a07b46acc..2c67303da3 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBean.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBean.java @@ -136,7 +136,10 @@ import org.springframework.context.ApplicationContextAware; * @author Tadaya Tsuyukubo * @author Sebastien Deleuze * @since 3.2 + * @deprecated since 7.0 in favor of using directly Jackson 3 converters default constructor */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class Jackson2ObjectMapperFactoryBean implements FactoryBean, BeanClassLoaderAware, ApplicationContextAware, InitializingBean { diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/JacksonModulesRuntimeHints.java b/spring-web/src/main/java/org/springframework/http/converter/json/JacksonModulesRuntimeHints.java index a3362db5d0..bc41be8701 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/JacksonModulesRuntimeHints.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/JacksonModulesRuntimeHints.java @@ -35,6 +35,7 @@ import org.springframework.aot.hint.TypeHint.Builder; */ class JacksonModulesRuntimeHints implements RuntimeHintsRegistrar { + @SuppressWarnings("removal") private static final Consumer asJacksonModule = builder -> builder.onReachableType(Jackson2ObjectMapperBuilder.class) .withMembers(MemberCategory.INVOKE_DECLARED_CONSTRUCTORS); diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverter.java index 15e1927a3f..c91cc3dbe9 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverter.java @@ -44,7 +44,10 @@ import org.springframework.http.MediaType; * @author Juergen Hoeller * @author Sebastien Deleuze * @since 3.1.2 + * @deprecated since 7.0 in favor of {@link JacksonJsonHttpMessageConverter} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class MappingJackson2HttpMessageConverter extends AbstractJackson2HttpMessageConverter { private static final List problemDetailMediaTypes = diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonInputMessage.java b/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonInputMessage.java index aa73dc71f2..0afdc955da 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonInputMessage.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonInputMessage.java @@ -30,7 +30,9 @@ import org.springframework.http.HttpInputMessage; * * @author Sebastien Deleuze * @since 4.2 + * @deprecated since 7.0 in favor of using {@link org.springframework.http.converter.SmartHttpMessageConverter} hints */ +@Deprecated(since = "7.0", forRemoval = true) public class MappingJacksonInputMessage implements HttpInputMessage { private final InputStream body; diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonValue.java b/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonValue.java index 2c08f45b05..cb767c0213 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonValue.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/MappingJacksonValue.java @@ -33,7 +33,9 @@ import org.jspecify.annotations.Nullable; * * @author Rossen Stoyanchev * @since 4.1 + * @deprecated since 7.0 in favor of using {@link org.springframework.http.converter.SmartHttpMessageConverter} hints */ +@Deprecated(since = "7.0", forRemoval = true) public class MappingJacksonValue { private Object value; diff --git a/spring-web/src/main/java/org/springframework/http/converter/json/SpringHandlerInstantiator.java b/spring-web/src/main/java/org/springframework/http/converter/json/SpringHandlerInstantiator.java index 4d5885d39f..f23f183e08 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/json/SpringHandlerInstantiator.java +++ b/spring-web/src/main/java/org/springframework/http/converter/json/SpringHandlerInstantiator.java @@ -38,7 +38,7 @@ import org.springframework.context.ApplicationContext; import org.springframework.util.Assert; /** - * Allows for creating Jackson ({@link JsonSerializer}, {@link JsonDeserializer}, + * Allows for creating Jackson 2.x ({@link JsonSerializer}, {@link JsonDeserializer}, * {@link KeyDeserializer}, {@link TypeResolverBuilder}, {@link TypeIdResolver}) * beans with autowiring against a Spring {@link ApplicationContext}. * @@ -53,7 +53,9 @@ import org.springframework.util.Assert; * @see Jackson2ObjectMapperBuilder#handlerInstantiator(HandlerInstantiator) * @see ApplicationContext#getAutowireCapableBeanFactory() * @see HandlerInstantiator + * @deprecated since 7.0 in favor of {@link org.springframework.http.support.JacksonHandlerInstantiator} */ +@Deprecated(since = "7.0", forRemoval = true) public class SpringHandlerInstantiator extends HandlerInstantiator { private final AutowireCapableBeanFactory beanFactory; diff --git a/spring-web/src/main/java/org/springframework/http/converter/smile/MappingJackson2SmileHttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/smile/MappingJackson2SmileHttpMessageConverter.java index c6f08464ec..fb27e45918 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/smile/MappingJackson2SmileHttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/smile/MappingJackson2SmileHttpMessageConverter.java @@ -37,7 +37,10 @@ import org.springframework.util.Assert; * * @author Sebastien Deleuze * @since 5.0 + * @deprecated since 7.0 in favor of {@link JacksonSmileHttpMessageConverter} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class MappingJackson2SmileHttpMessageConverter extends AbstractJackson2HttpMessageConverter { /** diff --git a/spring-web/src/main/java/org/springframework/http/converter/support/AllEncompassingFormHttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/support/AllEncompassingFormHttpMessageConverter.java index 9c29df735c..7da1d9b25e 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/support/AllEncompassingFormHttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/support/AllEncompassingFormHttpMessageConverter.java @@ -101,6 +101,7 @@ public class AllEncompassingFormHttpMessageConverter extends FormHttpMessageConv } + @SuppressWarnings("removal") public AllEncompassingFormHttpMessageConverter() { if (jaxb2Present && !jacksonXmlPresent && !jackson2XmlPresent) { diff --git a/spring-web/src/main/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverter.java index d2553f13f0..fb428cc959 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/xml/MappingJackson2XmlHttpMessageConverter.java @@ -41,7 +41,10 @@ import org.springframework.util.Assert; * * @author Sebastien Deleuze * @since 4.1 + * @deprecated since 7.0 in favor of {@link JacksonXmlHttpMessageConverter} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class MappingJackson2XmlHttpMessageConverter extends AbstractJackson2HttpMessageConverter { private static final List problemDetailMediaTypes = diff --git a/spring-web/src/main/java/org/springframework/http/converter/yaml/MappingJackson2YamlHttpMessageConverter.java b/spring-web/src/main/java/org/springframework/http/converter/yaml/MappingJackson2YamlHttpMessageConverter.java index 253d2552e5..3d21e14b15 100644 --- a/spring-web/src/main/java/org/springframework/http/converter/yaml/MappingJackson2YamlHttpMessageConverter.java +++ b/spring-web/src/main/java/org/springframework/http/converter/yaml/MappingJackson2YamlHttpMessageConverter.java @@ -39,7 +39,10 @@ import org.springframework.util.Assert; * * @author Hyoungjune Kim * @since 6.2 + * @deprecated since 7.0 in favor of {@link JacksonYamlHttpMessageConverter} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class MappingJackson2YamlHttpMessageConverter extends AbstractJackson2HttpMessageConverter { /** diff --git a/spring-web/src/main/java/org/springframework/web/client/DefaultRestClientBuilder.java b/spring-web/src/main/java/org/springframework/web/client/DefaultRestClientBuilder.java index 9e83bb5e78..0e17cd41d5 100644 --- a/spring-web/src/main/java/org/springframework/web/client/DefaultRestClientBuilder.java +++ b/spring-web/src/main/java/org/springframework/web/client/DefaultRestClientBuilder.java @@ -469,6 +469,7 @@ final class DefaultRestClientBuilder implements RestClient.Builder { return this; } + @SuppressWarnings("removal") private List> initMessageConverters() { if (this.messageConverters == null) { this.messageConverters = new ArrayList<>(); diff --git a/spring-web/src/main/java/org/springframework/web/client/RestTemplate.java b/spring-web/src/main/java/org/springframework/web/client/RestTemplate.java index a5f7a692a3..8b65c86f79 100644 --- a/spring-web/src/main/java/org/springframework/web/client/RestTemplate.java +++ b/spring-web/src/main/java/org/springframework/web/client/RestTemplate.java @@ -202,6 +202,7 @@ public class RestTemplate extends InterceptingHttpAccessor implements RestOperat * Create a new instance with default settings. * Default {@link HttpMessageConverter HttpMessageConverters} are initialized. */ + @SuppressWarnings("removal") public RestTemplate() { this.messageConverters.add(new ByteArrayHttpMessageConverter()); this.messageConverters.add(new StringHttpMessageConverter()); diff --git a/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborDecoderTests.java b/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborDecoderTests.java index c640b3ba53..d6d5fe2175 100644 --- a/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborDecoderTests.java +++ b/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborDecoderTests.java @@ -40,6 +40,7 @@ import static org.springframework.http.MediaType.APPLICATION_JSON; * * @author Sebastien Deleuze */ +@SuppressWarnings("removal") class Jackson2CborDecoderTests extends AbstractDecoderTests { private static final MimeType CBOR_MIME_TYPE = new MimeType("application", "cbor"); diff --git a/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborEncoderTests.java b/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborEncoderTests.java index ba041018f5..23a1adf5d0 100644 --- a/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborEncoderTests.java +++ b/spring-web/src/test/java/org/springframework/http/codec/cbor/Jackson2CborEncoderTests.java @@ -43,6 +43,7 @@ import static org.springframework.http.MediaType.APPLICATION_XML; * * @author Sebastien Deleuze */ +@SuppressWarnings("removal") class Jackson2CborEncoderTests extends AbstractLeakCheckingTests { private static final MimeType CBOR_MIME_TYPE = new MimeType("application", "cbor"); diff --git a/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonDecoderTests.java b/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonDecoderTests.java index 8fa0a67b52..3ac5ef8bec 100644 --- a/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonDecoderTests.java +++ b/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonDecoderTests.java @@ -62,6 +62,7 @@ import static org.springframework.http.codec.json.Jackson2CodecSupport.JSON_VIEW * @author Sebastien Deleuze * @author Rossen Stoyanchev */ +@SuppressWarnings("removal") class Jackson2JsonDecoderTests extends AbstractDecoderTests { private final Pojo pojo1 = new Pojo("f1", "b1"); diff --git a/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonEncoderTests.java b/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonEncoderTests.java index e53d634e94..22e96bd22c 100644 --- a/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonEncoderTests.java +++ b/spring-web/src/test/java/org/springframework/http/codec/json/Jackson2JsonEncoderTests.java @@ -50,12 +50,12 @@ import static org.springframework.http.MediaType.APPLICATION_JSON; import static org.springframework.http.MediaType.APPLICATION_NDJSON; import static org.springframework.http.MediaType.APPLICATION_OCTET_STREAM; import static org.springframework.http.MediaType.APPLICATION_XML; -import static org.springframework.http.codec.json.Jackson2CodecSupport.JSON_VIEW_HINT; /** * Tests for {@link Jackson2JsonEncoder}. * @author Sebastien Deleuze */ +@SuppressWarnings("removal") class Jackson2JsonEncoderTests extends AbstractEncoderTests { public Jackson2JsonEncoderTests() { @@ -201,7 +201,8 @@ class Jackson2JsonEncoderTests extends AbstractEncoderTests Mono input = Mono.just(bean); ResolvableType type = ResolvableType.forClass(JacksonViewBean.class); - Map hints = singletonMap(JSON_VIEW_HINT, MyJacksonView1.class); + Map hints = singletonMap(org.springframework.http.codec.json.Jackson2CodecSupport.JSON_VIEW_HINT, + MyJacksonView1.class); testEncode(input, type, null, hints, step -> step .consumeNextWith(expectString("{\"withView1\":\"with\"}")) @@ -218,7 +219,8 @@ class Jackson2JsonEncoderTests extends AbstractEncoderTests Mono input = Mono.just(bean); ResolvableType type = ResolvableType.forClass(JacksonViewBean.class); - Map hints = singletonMap(JSON_VIEW_HINT, MyJacksonView3.class); + Map hints = singletonMap(org.springframework.http.codec.json.Jackson2CodecSupport.JSON_VIEW_HINT, + MyJacksonView3.class); testEncode(input, type, null, hints, step -> step .consumeNextWith(expectString("{\"withoutView\":\"without\"}")) diff --git a/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilderTests.java b/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilderTests.java index b8c927bac5..c6d01e5195 100644 --- a/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilderTests.java +++ b/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperBuilderTests.java @@ -98,7 +98,7 @@ import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException * @author EddĂș MelĂ©ndez * @author Hyoungjune Kim */ -@SuppressWarnings("deprecation") +@SuppressWarnings({"deprecation", "removal"}) class Jackson2ObjectMapperBuilderTests { private static final String DATE_FORMAT = "yyyy-MM-dd"; diff --git a/spring-web/src/test/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverterTests.java b/spring-web/src/test/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverterTests.java index 8a7095fddf..e5362d71cc 100644 --- a/spring-web/src/test/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverterTests.java +++ b/spring-web/src/test/java/org/springframework/http/converter/json/MappingJackson2HttpMessageConverterTests.java @@ -61,6 +61,7 @@ import static org.assertj.core.api.Assertions.within; * @author Sebastien Deleuze * @author Juergen Hoeller */ +@SuppressWarnings("removal") class MappingJackson2HttpMessageConverterTests { private final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(); diff --git a/spring-web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java b/spring-web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java index a0b9e63505..022309b308 100644 --- a/spring-web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java +++ b/spring-web/src/test/java/org/springframework/web/client/RestTemplateIntegrationTests.java @@ -409,6 +409,7 @@ class RestTemplateIntegrationTests extends AbstractMockWebServerTests { @ParameterizedRestTemplateTest @Disabled("Use RestClient + upcoming hint management instead") + @SuppressWarnings("removal") void jsonPostForObjectWithJacksonJsonView(ClientHttpRequestFactory clientHttpRequestFactory) { setUpClient(clientHttpRequestFactory); diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParser.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParser.java index 3675bcf107..c5bb18b0f3 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParser.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/config/AnnotationDrivenBeanDefinitionParser.java @@ -561,6 +561,7 @@ class AnnotationDrivenBeanDefinitionParser implements BeanDefinitionParser { return (handlers != null ? extractBeanSubElements(handlers, context) : null); } + @SuppressWarnings("removal") private ManagedList getMessageConverters(Element element, @Nullable Object source, ParserContext context) { Element convertersElement = DomUtils.getChildElementByTagName(element, "message-converters"); ManagedList messageConverters = new ManagedList<>(); @@ -657,6 +658,7 @@ class AnnotationDrivenBeanDefinitionParser implements BeanDefinitionParser { return messageConverters; } + @SuppressWarnings("removal") private GenericBeanDefinition createObjectMapperFactoryDefinition(@Nullable Object source) { GenericBeanDefinition beanDefinition = new GenericBeanDefinition(); beanDefinition.setBeanClass(Jackson2ObjectMapperFactoryBean.class); diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupport.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupport.java index 72bc6fd107..f10b85de53 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupport.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/config/annotation/WebMvcConfigurationSupport.java @@ -917,6 +917,7 @@ public class WebMvcConfigurationSupport implements ApplicationContextAware, Serv * Subclasses can call this method from {@link #configureMessageConverters}. * @param messageConverters the list to add the default message converters to */ + @SuppressWarnings("removal") protected final void addDefaultHttpMessageConverters(List> messageConverters) { messageConverters.add(new ByteArrayHttpMessageConverter()); messageConverters.add(new StringHttpMessageConverter()); diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/AbstractMappingJacksonResponseBodyAdvice.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/AbstractMappingJacksonResponseBodyAdvice.java index 144d48dd22..9240250d47 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/AbstractMappingJacksonResponseBodyAdvice.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/AbstractMappingJacksonResponseBodyAdvice.java @@ -36,6 +36,7 @@ import org.springframework.http.server.ServerHttpResponse; * @author Sebastien Deleuze * @since 4.1 */ +@SuppressWarnings("removal") public abstract class AbstractMappingJacksonResponseBodyAdvice implements ResponseBodyAdvice { @Override diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewRequestBodyAdvice.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewRequestBodyAdvice.java index a5c9e7befc..f2e4933157 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewRequestBodyAdvice.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewRequestBodyAdvice.java @@ -51,6 +51,7 @@ import org.springframework.util.Assert; * @see com.fasterxml.jackson.annotation.JsonView * @see com.fasterxml.jackson.databind.ObjectMapper#readerWithView(Class) */ +@SuppressWarnings("removal") public class JsonViewRequestBodyAdvice extends RequestBodyAdviceAdapter { @Override diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewResponseBodyAdvice.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewResponseBodyAdvice.java index 11525ad218..9f4b6dfa02 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewResponseBodyAdvice.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/mvc/method/annotation/JsonViewResponseBodyAdvice.java @@ -48,6 +48,7 @@ import org.springframework.util.Assert; * @see com.fasterxml.jackson.annotation.JsonView * @see com.fasterxml.jackson.databind.ObjectMapper#writerWithView(Class) */ +@SuppressWarnings("removal") public class JsonViewResponseBodyAdvice extends AbstractMappingJacksonResponseBodyAdvice { @Override diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/AbstractJackson2View.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/AbstractJackson2View.java index eeedd9c18e..56857dd019 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/AbstractJackson2View.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/AbstractJackson2View.java @@ -34,6 +34,7 @@ import org.jspecify.annotations.Nullable; import org.springframework.http.converter.json.MappingJacksonValue; import org.springframework.util.Assert; +import org.springframework.web.servlet.view.AbstractJacksonView; import org.springframework.web.servlet.view.AbstractView; /** @@ -46,7 +47,10 @@ import org.springframework.web.servlet.view.AbstractView; * @author Juergen Hoeller * @author Sebastien Deleuze * @since 4.1 + * @deprecated since 7.0 in favor of {@link AbstractJacksonView} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public abstract class AbstractJackson2View extends AbstractView { private ObjectMapper objectMapper; diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/MappingJackson2JsonView.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/MappingJackson2JsonView.java index 4f5d95834f..d9c1766d94 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/MappingJackson2JsonView.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/view/json/MappingJackson2JsonView.java @@ -48,7 +48,10 @@ import org.springframework.web.servlet.View; * @author Juergen Hoeller * @author Sebastien Deleuze * @since 3.1.2 + * @deprecated since 7.0 in favor of {@link JacksonJsonView} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class MappingJackson2JsonView extends AbstractJackson2View { /** diff --git a/spring-webmvc/src/main/java/org/springframework/web/servlet/view/xml/MappingJackson2XmlView.java b/spring-webmvc/src/main/java/org/springframework/web/servlet/view/xml/MappingJackson2XmlView.java index 26d23966a5..94cb4db2f2 100644 --- a/spring-webmvc/src/main/java/org/springframework/web/servlet/view/xml/MappingJackson2XmlView.java +++ b/spring-webmvc/src/main/java/org/springframework/web/servlet/view/xml/MappingJackson2XmlView.java @@ -41,7 +41,10 @@ import org.springframework.web.servlet.view.json.AbstractJackson2View; * @author Sebastien Deleuze * @since 4.1 * @see org.springframework.web.servlet.view.json.MappingJackson2JsonView + * @deprecated since 7.0 in favor of {@link JacksonXmlView} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class MappingJackson2XmlView extends AbstractJackson2View { /** diff --git a/spring-webmvc/src/test/java/org/springframework/web/servlet/mvc/method/annotation/RequestResponseBodyMethodProcessorTests.java b/spring-webmvc/src/test/java/org/springframework/web/servlet/mvc/method/annotation/RequestResponseBodyMethodProcessorTests.java index 74bf7f23a2..849c9a0236 100644 --- a/spring-webmvc/src/test/java/org/springframework/web/servlet/mvc/method/annotation/RequestResponseBodyMethodProcessorTests.java +++ b/spring-webmvc/src/test/java/org/springframework/web/servlet/mvc/method/annotation/RequestResponseBodyMethodProcessorTests.java @@ -519,6 +519,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test + @SuppressWarnings("removal") void jackson2JsonViewWithResponseBodyAndJsonMessageConverter() throws Exception { Method method = JacksonController.class.getMethod("handleResponseBody"); HandlerMethod handlerMethod = new HandlerMethod(new JacksonController(), method); @@ -557,6 +558,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test + @SuppressWarnings("removal") void jackson2JsonViewWithResponseEntityAndJsonMessageConverter() throws Exception { Method method = JacksonController.class.getMethod("handleResponseEntity"); HandlerMethod handlerMethod = new HandlerMethod(new JacksonController(), method); @@ -595,6 +597,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-12149 + @SuppressWarnings("removal") void jackson2JsonViewWithResponseBodyAndXmlMessageConverter() throws Exception { Method method = JacksonController.class.getMethod("handleResponseBody"); HandlerMethod handlerMethod = new HandlerMethod(new JacksonController(), method); @@ -633,6 +636,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-12149 + @SuppressWarnings("removal") void jackson2JsonViewWithResponseEntityAndXmlMessageConverter() throws Exception { Method method = JacksonController.class.getMethod("handleResponseEntity"); HandlerMethod handlerMethod = new HandlerMethod(new JacksonController(), method); @@ -675,6 +679,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-12501 + @SuppressWarnings("removal") void resolveArgumentWithJackson2JsonView() throws Exception { String content = "{\"withView1\" : \"with\", \"withView2\" : \"with\", \"withoutView\" : \"without\"}"; this.servletRequest.setContent(content.getBytes(StandardCharsets.UTF_8)); @@ -723,6 +728,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-12501 + @SuppressWarnings("removal") void resolveHttpEntityArgumentWithJackson2JsonView() throws Exception { String content = "{\"withView1\" : \"with\", \"withView2\" : \"with\", \"withoutView\" : \"without\"}"; this.servletRequest.setContent(content.getBytes(StandardCharsets.UTF_8)); @@ -774,6 +780,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-12501 + @SuppressWarnings("removal") void resolveArgumentWithJackson2JsonViewAndXmlMessageConverter() throws Exception { String content = "" + "with" + @@ -828,6 +835,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-12501 + @SuppressWarnings("removal") void resolveHttpEntityArgumentWithJackson2JsonViewAndXmlMessageConverter() throws Exception { String content = "" + "with" + @@ -873,6 +881,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-12811 + @SuppressWarnings("removal") void jackson2TypeInfoList() throws Exception { Method method = JacksonController.class.getMethod("handleTypeInfoList"); HandlerMethod handlerMethod = new HandlerMethod(new JacksonController(), method); @@ -907,6 +916,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-13318 + @SuppressWarnings("removal") void jackson2SubType() throws Exception { Method method = JacksonController.class.getMethod("handleSubType"); HandlerMethod handlerMethod = new HandlerMethod(new JacksonController(), method); @@ -943,6 +953,7 @@ class RequestResponseBodyMethodProcessorTests { } @Test // SPR-13318 + @SuppressWarnings("removal") void jackson2SubTypeList() throws Exception { Method method = JacksonController.class.getMethod("handleSubTypeList"); HandlerMethod handlerMethod = new HandlerMethod(new JacksonController(), method); diff --git a/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/client/SockJsClient.java b/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/client/SockJsClient.java index ba67e7c35b..48404dd978 100644 --- a/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/client/SockJsClient.java +++ b/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/client/SockJsClient.java @@ -97,6 +97,7 @@ public class SockJsClient implements WebSocketClient, Lifecycle { * otherwise is defaulted to {@link RestTemplateXhrTransport}. * @param transports the (non-empty) list of transports to use */ + @SuppressWarnings("removal") public SockJsClient(List transports) { Assert.notEmpty(transports, "No transports provided"); this.transports = new ArrayList<>(transports); diff --git a/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/frame/Jackson2SockJsMessageCodec.java b/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/frame/Jackson2SockJsMessageCodec.java index 53b808f338..becb7e71ea 100644 --- a/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/frame/Jackson2SockJsMessageCodec.java +++ b/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/frame/Jackson2SockJsMessageCodec.java @@ -39,7 +39,10 @@ import org.springframework.util.Assert; * * @author Rossen Stoyanchev * @since 4.0 + * @deprecated since 7.0 in favor of {@link JacksonJsonSockJsMessageCodec} */ +@Deprecated(since = "7.0", forRemoval = true) +@SuppressWarnings("removal") public class Jackson2SockJsMessageCodec extends AbstractSockJsMessageCodec { private final ObjectMapper objectMapper; diff --git a/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/transport/TransportHandlingSockJsService.java b/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/transport/TransportHandlingSockJsService.java index 2dd90c876b..913e756463 100644 --- a/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/transport/TransportHandlingSockJsService.java +++ b/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/transport/TransportHandlingSockJsService.java @@ -109,6 +109,7 @@ public class TransportHandlingSockJsService extends AbstractSockJsService implem * initialized at start-up and shuts down when the application stops * @param handlers one or more {@link TransportHandler} implementations to use */ + @SuppressWarnings("removal") public TransportHandlingSockJsService(TaskScheduler scheduler, Collection handlers) { super(scheduler);