From 72bfd4ce680971208c040a4435a33bf82c6425c2 Mon Sep 17 00:00:00 2001 From: Dave Syer Date: Tue, 17 Dec 2013 17:16:52 +0000 Subject: [PATCH] Protect HttpMessageConverters if MVC is not available --- .../web/HttpMessageConverters.java | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) 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; }