diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/HttpMessageConverters.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/HttpMessageConverters.java index e62b3163b5..1ea7f46973 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/HttpMessageConverters.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/HttpMessageConverters.java @@ -25,6 +25,8 @@ import java.util.List; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.xml.AbstractXmlHttpMessageConverter; +import org.springframework.util.ClassUtils; +import org.springframework.web.client.RestTemplate; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; /** @@ -88,11 +90,19 @@ public class HttpMessageConverters implements Iterable> private List> getDefaultConverters() { List> converters = new ArrayList>(); - converters.addAll(new WebMvcConfigurationSupport() { - public List> defaultMessageConverters() { - return super.getMessageConverters(); - } - }.defaultMessageConverters()); + if (ClassUtils + .isPresent( + "org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport", + null)) { + converters.addAll(new WebMvcConfigurationSupport() { + public List> defaultMessageConverters() { + return super.getMessageConverters(); + } + }.defaultMessageConverters()); + } + else { + converters.addAll(new RestTemplate().getMessageConverters()); + } reorderXmlConvertersToEnd(converters); return converters; }