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 a8b0ebcf335..7a42c8f0bda 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 @@ -18,7 +18,6 @@ package org.springframework.http.converter.json; import java.text.DateFormat; import java.text.SimpleDateFormat; -import java.time.ZoneId; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.LinkedList; @@ -168,7 +167,7 @@ public class Jackson2ObjectMapperBuilder { * @since 4.1.5 */ public Jackson2ObjectMapperBuilder timeZone(String zoneId) { - this.timeZone = TimeZone.getTimeZone(ZoneId.of(zoneId)); + this.timeZone = TimeZone.getTimeZone(zoneId); return this; } 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 d3a113dd8b1..c0f1abd77ef 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 @@ -17,8 +17,6 @@ package org.springframework.http.converter.json; import java.text.SimpleDateFormat; -import java.time.ZoneId; -import java.time.zone.ZoneRulesException; import java.util.Arrays; import java.util.Collections; import java.util.Date; @@ -179,7 +177,7 @@ public class Jackson2ObjectMapperBuilderTests { @Test public void timeZoneSetter() { - TimeZone timeZone = TimeZone.getTimeZone(ZoneId.of("Europe/Paris")); + TimeZone timeZone = TimeZone.getTimeZone("Europe/Paris"); ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json().timeZone(timeZone).build(); assertEquals(timeZone, objectMapper.getSerializationConfig().getTimeZone()); assertEquals(timeZone, objectMapper.getDeserializationConfig().getTimeZone()); @@ -189,15 +187,18 @@ public class Jackson2ObjectMapperBuilderTests { public void timeZoneStringSetter() { String zoneId = "Europe/Paris"; ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json().timeZone(zoneId).build(); - TimeZone timeZone = TimeZone.getTimeZone(ZoneId.of(zoneId)); + TimeZone timeZone = TimeZone.getTimeZone(zoneId); assertEquals(timeZone, objectMapper.getSerializationConfig().getTimeZone()); assertEquals(timeZone, objectMapper.getDeserializationConfig().getTimeZone()); } - @Test(expected = ZoneRulesException.class) + @Test public void wrongTimeZoneStringSetter() { String zoneId = "foo"; - Jackson2ObjectMapperBuilder.json().timeZone(zoneId).build(); + ObjectMapper objectMapper = Jackson2ObjectMapperBuilder.json().timeZone(zoneId).build(); + TimeZone timeZone = TimeZone.getTimeZone("GMT"); + assertEquals(timeZone, objectMapper.getSerializationConfig().getTimeZone()); + assertEquals(timeZone, objectMapper.getDeserializationConfig().getTimeZone()); } @Test diff --git a/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBeanTests.java b/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBeanTests.java index 5d778933a6a..1563b55c9bf 100644 --- a/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBeanTests.java +++ b/spring-web/src/test/java/org/springframework/http/converter/json/Jackson2ObjectMapperFactoryBeanTests.java @@ -17,8 +17,6 @@ package org.springframework.http.converter.json; import java.text.SimpleDateFormat; -import java.time.ZoneId; -import java.time.zone.ZoneRulesException; import java.util.Arrays; import java.util.Collections; import java.util.Date; @@ -176,7 +174,7 @@ public class Jackson2ObjectMapperFactoryBeanTests { @Test public void timeZoneSetter() { - TimeZone timeZone = TimeZone.getTimeZone(ZoneId.of("Europe/Paris")); + TimeZone timeZone = TimeZone.getTimeZone("Europe/Paris"); this.factory.setTimeZone(timeZone); this.factory.afterPropertiesSet(); @@ -192,17 +190,21 @@ public class Jackson2ObjectMapperFactoryBeanTests { this.factory.setTimeZone(zoneId); this.factory.afterPropertiesSet(); - TimeZone timeZone = TimeZone.getTimeZone(ZoneId.of(zoneId)); + TimeZone timeZone = TimeZone.getTimeZone(zoneId); assertEquals(timeZone, this.factory.getObject().getSerializationConfig().getTimeZone()); assertEquals(timeZone, this.factory.getObject().getDeserializationConfig().getTimeZone()); } - @Test(expected = ZoneRulesException.class) + @Test public void wrongTimeZoneStringSetter() { String zoneId = "foo"; this.factory.setTimeZone(zoneId); this.factory.afterPropertiesSet(); + + TimeZone timeZone = TimeZone.getTimeZone("GMT"); + assertEquals(timeZone, this.factory.getObject().getSerializationConfig().getTimeZone()); + assertEquals(timeZone, this.factory.getObject().getDeserializationConfig().getTimeZone()); } @Test