From d38fdf338b49790311e211464a8c5fa7ca8f4f3b Mon Sep 17 00:00:00 2001 From: Oliver Gierke Date: Mon, 24 Jul 2017 14:12:50 +0200 Subject: [PATCH] DATACMNS-1123 - Upgraded to XmlBeam 1.4.12 and tweaked HttpMessageConverter implementation. XmlBeam 1.4.11 accidentally removed ProjectionFactory as public interface. Adapted our HttpMessageConverter implementation to make sure we still work on those versions. Related ticket: https://github.com/SvenEwald/xmlbeam/issues/45 --- pom.xml | 2 +- .../springframework/data/web/XmlBeamHttpMessageConverter.java | 3 +-- .../config/SpringDataWebConfigurationIntegrationTests.java | 4 ++-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 708088590..12fa3c408 100644 --- a/pom.xml +++ b/pom.xml @@ -20,7 +20,7 @@ 2.0.4 0.9.0 2.11.7 - 1.4.8 + 1.4.12 diff --git a/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java b/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java index f258e8ee4..be0dc7992 100644 --- a/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java +++ b/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java @@ -28,7 +28,6 @@ import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.HttpMessageNotReadableException; import org.springframework.http.converter.HttpMessageNotWritableException; import org.springframework.util.ConcurrentReferenceHashMap; -import org.xmlbeam.ProjectionFactory; import org.xmlbeam.XBProjector; /** @@ -40,7 +39,7 @@ import org.xmlbeam.XBProjector; */ public class XmlBeamHttpMessageConverter extends AbstractHttpMessageConverter { - private final ProjectionFactory projectionFactory; + private final XBProjector projectionFactory; private final Map, Boolean> supportedTypesCache = new ConcurrentReferenceHashMap, Boolean>(); /** diff --git a/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java b/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java index 2700b1e37..4023181a8 100644 --- a/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java +++ b/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java @@ -28,7 +28,7 @@ import org.springframework.data.classloadersupport.HidingClassLoader; import org.springframework.data.web.ProjectingJackson2HttpMessageConverter; import org.springframework.data.web.XmlBeamHttpMessageConverter; import org.springframework.http.converter.HttpMessageConverter; -import org.xmlbeam.ProjectionFactory; +import org.xmlbeam.XBProjector; import com.fasterxml.jackson.databind.ObjectMapper; import com.jayway.jsonpath.DocumentContext; @@ -67,7 +67,7 @@ public class SpringDataWebConfigurationIntegrationTests { List> converters = new ArrayList>(); - ClassLoader classLoader = HidingClassLoader.hide(ProjectionFactory.class); + ClassLoader classLoader = HidingClassLoader.hide(XBProjector.class); createConfigWithClassLoader(classLoader).extendMessageConverters(converters); assertThat(converters, not(hasItem(instanceWithClassName(XmlBeamHttpMessageConverter.class))));