diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationConverterInitializer.java b/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationConverterInitializer.java index 874dfa14fd..f7317d3ed6 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationConverterInitializer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationConverterInitializer.java @@ -31,6 +31,7 @@ import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.core.type.AnnotationMetadata; import org.springframework.core.type.MethodMetadata; import org.springframework.integration.context.IntegrationContextUtils; +import org.springframework.integration.support.utils.IntegrationUtils; /** * @author Artem Bilan @@ -71,8 +72,8 @@ public class IntegrationConverterInitializer implements IntegrationConfiguration registry.registerBeanDefinition(IntegrationContextUtils.CONVERTER_REGISTRAR_BEAN_NAME, converterRegistrarBuilder.getBeanDefinition()); - if (!registry.containsBeanDefinition(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME)) { - registry.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, + if (!registry.containsBeanDefinition(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME)) { + registry.registerBeanDefinition(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, new RootBeanDefinition(CONTEXT_PACKAGE + "CustomConversionServiceFactoryBean")); } } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationEvaluationContextFactoryBean.java b/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationEvaluationContextFactoryBean.java index 66e081adc2..d594318784 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationEvaluationContextFactoryBean.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/IntegrationEvaluationContextFactoryBean.java @@ -38,6 +38,7 @@ import org.springframework.expression.TypeLocator; import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.expression.spel.support.StandardTypeConverter; import org.springframework.integration.context.IntegrationContextUtils; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.util.Assert; /** @@ -119,7 +120,7 @@ public class IntegrationEvaluationContextFactoryBean implements FactoryBean message, Class targetClass) { - ConversionService conversionService = this.getConversionService(); + ConversionService conversionService = this.conversionService; if (conversionService != null) { if (conversionService.canConvert(message.getPayload().getClass(), targetClass)) { return conversionService.convert(message.getPayload(), targetClass); diff --git a/spring-integration-core/src/main/java/org/springframework/integration/support/utils/IntegrationUtils.java b/spring-integration-core/src/main/java/org/springframework/integration/support/utils/IntegrationUtils.java new file mode 100644 index 0000000000..07a8a195b2 --- /dev/null +++ b/spring-integration-core/src/main/java/org/springframework/integration/support/utils/IntegrationUtils.java @@ -0,0 +1,49 @@ +/* + * Copyright 2014 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. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.springframework.integration.support.utils; + +import org.springframework.beans.factory.BeanFactory; +import org.springframework.core.convert.ConversionService; +import org.springframework.util.Assert; + +/** + * General utility methods. + * + * @author Gary Russell + * @since 4.0 + * + */ +public class IntegrationUtils { + + public static final String INTEGRATION_CONVERSION_SERVICE_BEAN_NAME = "integrationConversionService"; + + /** + * @param beanFactory BeanFactory for lookup, must not be null. + * @return The {@link ConversionService} bean whose name is "integrationConversionService" if available. + */ + public static ConversionService getConversionService(BeanFactory beanFactory) { + return getBeanOfType(beanFactory, INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, ConversionService.class); + } + + private static T getBeanOfType(BeanFactory beanFactory, String beanName, Class type) { + Assert.notNull(beanFactory, "BeanFactory must not be null"); + if (!beanFactory.containsBean(beanName)) { + return null; + } + return beanFactory.getBean(beanName, type); + } + +} diff --git a/spring-integration-core/src/main/java/org/springframework/integration/support/utils/package-info.java b/spring-integration-core/src/main/java/org/springframework/integration/support/utils/package-info.java new file mode 100644 index 0000000000..24562467c1 --- /dev/null +++ b/spring-integration-core/src/main/java/org/springframework/integration/support/utils/package-info.java @@ -0,0 +1,4 @@ +/** + * Provides global utility support classes for the runtime system. + */ +package org.springframework.integration.support.utils; diff --git a/spring-integration-core/src/main/java/org/springframework/integration/transformer/AbstractMessageProcessingTransformer.java b/spring-integration-core/src/main/java/org/springframework/integration/transformer/AbstractMessageProcessingTransformer.java index f30c20648f..27a4acad2b 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/transformer/AbstractMessageProcessingTransformer.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/transformer/AbstractMessageProcessingTransformer.java @@ -24,6 +24,7 @@ import org.springframework.integration.handler.AbstractMessageProcessor; import org.springframework.integration.handler.MessageProcessor; import org.springframework.integration.support.DefaultMessageBuilderFactory; import org.springframework.integration.support.MessageBuilderFactory; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.messaging.Message; import org.springframework.util.Assert; @@ -52,7 +53,7 @@ public abstract class AbstractMessageProcessingTransformer implements Transforme if (this.messageProcessor instanceof BeanFactoryAware) { ((BeanFactoryAware) this.messageProcessor).setBeanFactory(beanFactory); } - ConversionService conversionService = IntegrationContextUtils.getConversionService(beanFactory); + ConversionService conversionService = IntegrationUtils.getConversionService(beanFactory); if (conversionService != null && this.messageProcessor instanceof AbstractMessageProcessor) { ((AbstractMessageProcessor) this.messageProcessor).setConversionService(conversionService); } diff --git a/spring-integration-core/src/test/java/org/springframework/integration/channel/DatatypeChannelTests.java b/spring-integration-core/src/test/java/org/springframework/integration/channel/DatatypeChannelTests.java index 2d1cbfa98e..3a2a614cd9 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/channel/DatatypeChannelTests.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/channel/DatatypeChannelTests.java @@ -18,6 +18,7 @@ package org.springframework.integration.channel; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; import java.util.Collections; @@ -35,6 +36,8 @@ import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.core.convert.support.GenericConversionService; import org.springframework.integration.context.IntegrationContextUtils; import org.springframework.integration.support.converter.DefaultDatatypeChannelMessageConverter; +import org.springframework.integration.support.utils.IntegrationUtils; +import org.springframework.integration.test.util.TestUtils; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.MessageDeliveryException; import org.springframework.messaging.MessagingException; @@ -111,18 +114,22 @@ public class DatatypeChannelTests { BeanDefinitionBuilder conversionServiceBuilder = BeanDefinitionBuilder.genericBeanDefinition(ConversionServiceFactoryBean.class); conversionServiceBuilder.addPropertyValue("converters", Collections.singleton(converter)); - context.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, + context.registerBeanDefinition(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, conversionServiceBuilder.getBeanDefinition()); BeanDefinition messageConverter = BeanDefinitionBuilder.genericBeanDefinition( DefaultDatatypeChannelMessageConverter.class).getBeanDefinition(); context.registerBeanDefinition( - IntegrationContextUtils.INTEGRATION_DATATYPE_CHANNEL_MESSAGE_CONVERTER_BEAN_NAME, messageConverter); - BeanDefinitionBuilder channelBuilder = BeanDefinitionBuilder.genericBeanDefinition(QueueChannel.class); + IntegrationContextUtils.INTEGRATION_DATATYPE_CHANNEL_MESSAGE_CONVERTER_BEAN_NAME, + messageConverter); + BeanDefinitionBuilder channelBuilder = BeanDefinitionBuilder + .genericBeanDefinition(QueueChannel.class); channelBuilder.addPropertyValue("datatypes", "java.lang.Integer, java.util.Date"); context.registerBeanDefinition("testChannel", channelBuilder.getBeanDefinition()); context.refresh(); QueueChannel channel = context.getBean("testChannel", QueueChannel.class); + assertSame(context.getBean(ConversionService.class), + TestUtils.getPropertyValue(channel, "messageConverter.conversionService")); assertTrue(channel.send(new GenericMessage(Boolean.TRUE))); assertEquals(1, channel.receive().getPayload()); context.close(); diff --git a/spring-integration-core/src/test/java/org/springframework/integration/config/xml/ConverterParserWithExistingConversionServiceTests.java b/spring-integration-core/src/test/java/org/springframework/integration/config/xml/ConverterParserWithExistingConversionServiceTests.java index 960eec36a1..1c635054e2 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/config/xml/ConverterParserWithExistingConversionServiceTests.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/config/xml/ConverterParserWithExistingConversionServiceTests.java @@ -17,6 +17,7 @@ package org.springframework.integration.config.xml; import org.junit.Test; import org.junit.runner.RunWith; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.context.ApplicationContext; @@ -25,7 +26,7 @@ import org.springframework.context.support.GenericApplicationContext; import org.springframework.core.convert.ConversionService; import org.springframework.core.convert.converter.Converter; import org.springframework.core.convert.support.GenericConversionService; -import org.springframework.integration.context.IntegrationContextUtils; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.util.Assert; @@ -42,12 +43,12 @@ public class ConverterParserWithExistingConversionServiceTests { private ApplicationContext applicationContext; @Autowired - @Qualifier(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME) + @Qualifier(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME) private ConversionService conversionService; @Test public void testConversionServiceAvailability(){ - Assert.isTrue(applicationContext.getBean(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME).equals(conversionService)); + Assert.isTrue(applicationContext.getBean(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME).equals(conversionService)); Assert.isTrue(conversionService.canConvert(TestBean1.class, TestBean2.class)); Assert.isTrue(conversionService.canConvert(TestBean1.class, TestBean3.class)); } @@ -60,8 +61,8 @@ public class ConverterParserWithExistingConversionServiceTests { childContext.refresh(); - GenericConversionService conversionServiceParent = parentContext.getBean(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME,GenericConversionService.class); - GenericConversionService conversionServiceChild = childContext.getBean(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME,GenericConversionService.class); + GenericConversionService conversionServiceParent = parentContext.getBean(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME,GenericConversionService.class); + GenericConversionService conversionServiceChild = childContext.getBean(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME,GenericConversionService.class); Assert.isTrue(conversionServiceParent == conversionServiceChild); // validating that they are pointing to the same object conversionServiceChild.addConverter(new TestConverter()); conversionServiceChild.addConverter(new TestConverter3()); @@ -72,7 +73,7 @@ public class ConverterParserWithExistingConversionServiceTests { private static class TestBean1 { - private String text; + private final String text; @SuppressWarnings("unused") public TestBean1(String text) { @@ -83,26 +84,28 @@ public class ConverterParserWithExistingConversionServiceTests { private static class TestBean2 { - private String text; + private final String text; public TestBean2(String text) { this.text = text; } // called by router for channel name + @Override public String toString() { return this.text.replace("-TEST", "_TARGET_CHANNEL"); } } private static class TestBean3 { - private String text; + private final String text; public TestBean3(String text) { this.text = text; } // called by router for channel name + @Override public String toString() { return this.text.replace("-TEST", "_TARGET_CHANNEL"); } @@ -110,6 +113,7 @@ public class ConverterParserWithExistingConversionServiceTests { private static class TestConverter implements Converter { + @Override public TestBean2 convert(TestBean1 source) { return new TestBean2(source.text.toUpperCase()); } @@ -117,6 +121,7 @@ public class ConverterParserWithExistingConversionServiceTests { private static class TestConverter3 implements Converter { + @Override public TestBean3 convert(TestBean1 source) { return new TestBean3(source.text.toUpperCase()); } diff --git a/spring-integration-core/src/test/java/org/springframework/integration/expression/ExpressionUtilsTests.java b/spring-integration-core/src/test/java/org/springframework/integration/expression/ExpressionUtilsTests.java index 8782284d5c..b51c2ae05d 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/expression/ExpressionUtilsTests.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/expression/ExpressionUtilsTests.java @@ -29,6 +29,7 @@ import org.springframework.expression.TypeConverter; import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.integration.config.IntegrationEvaluationContextFactoryBean; import org.springframework.integration.context.IntegrationContextUtils; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.integration.test.util.TestUtils; /** @@ -43,7 +44,7 @@ public class ExpressionUtilsTests { GenericApplicationContext context = new GenericApplicationContext(); context.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_EVALUATION_CONTEXT_BEAN_NAME, new RootBeanDefinition(IntegrationEvaluationContextFactoryBean.class)); - context.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, + context.registerBeanDefinition(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, new RootBeanDefinition(ConversionServiceFactoryBean.class)); context.refresh(); StandardEvaluationContext evalContext = ExpressionUtils.createStandardEvaluationContext(context); @@ -71,7 +72,7 @@ public class ExpressionUtilsTests { @Test public void testEvaluationContextNoFactoryBean() { GenericApplicationContext context = new GenericApplicationContext(); - context.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, + context.registerBeanDefinition(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, new RootBeanDefinition(ConversionServiceFactoryBean.class)); context.refresh(); StandardEvaluationContext evalContext = ExpressionUtils.createStandardEvaluationContext(context); @@ -80,7 +81,7 @@ public class ExpressionUtilsTests { assertNotNull(typeConverter); assertNotSame(TestUtils.getPropertyValue(typeConverter, "defaultConversionService"), TestUtils.getPropertyValue(typeConverter, "conversionService")); - assertSame(context.getBean(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME), + assertSame(context.getBean(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME), TestUtils.getPropertyValue(typeConverter, "conversionService")); } diff --git a/spring-integration-core/src/test/java/org/springframework/integration/gateway/GatewayProxyFactoryBeanTests.java b/spring-integration-core/src/test/java/org/springframework/integration/gateway/GatewayProxyFactoryBeanTests.java index 70cdae48b0..3072d4e858 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/gateway/GatewayProxyFactoryBeanTests.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/gateway/GatewayProxyFactoryBeanTests.java @@ -44,8 +44,8 @@ import org.springframework.expression.Expression; import org.springframework.expression.common.LiteralExpression; import org.springframework.integration.channel.DirectChannel; import org.springframework.integration.channel.QueueChannel; -import org.springframework.integration.context.IntegrationContextUtils; import org.springframework.integration.endpoint.EventDrivenConsumer; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.MessageHandler; @@ -91,7 +91,7 @@ public class GatewayProxyFactoryBeanTests { cs.addConverter(stringToByteConverter); GatewayProxyFactoryBean proxyFactory = new GatewayProxyFactoryBean(); DefaultListableBeanFactory bf = new DefaultListableBeanFactory(); - bf.registerSingleton(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, cs); + bf.registerSingleton(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, cs); proxyFactory.setBeanFactory(bf); proxyFactory.setDefaultRequestChannel(requestChannel); diff --git a/spring-integration-core/src/test/java/org/springframework/integration/router/RouterConcurrencyTest.java b/spring-integration-core/src/test/java/org/springframework/integration/router/RouterConcurrencyTest.java index 211be0b34b..f70a23b324 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/router/RouterConcurrencyTest.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/router/RouterConcurrencyTest.java @@ -36,9 +36,9 @@ import org.mockito.stubbing.Answer; import org.springframework.beans.factory.BeanFactory; import org.springframework.core.convert.ConversionService; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; -import org.springframework.integration.context.IntegrationContextUtils; /** * @author Gary Russell @@ -78,13 +78,14 @@ public class RouterConcurrencyTest { BeanFactory beanFactory = mock(BeanFactory.class); doAnswer(new Answer() { + @Override public Boolean answer(InvocationOnMock invocation) throws Throwable { if (beanCounter.getAndIncrement() < 2) { semaphore.tryAcquire(4, TimeUnit.SECONDS); } return false; } - }).when(beanFactory).containsBean(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME); + }).when(beanFactory).containsBean(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME); router.setBeanFactory(beanFactory); ExecutorService exec = Executors.newFixedThreadPool(2); @@ -92,6 +93,7 @@ public class RouterConcurrencyTest { new ArrayList()); Runnable runnable = new Runnable() { + @Override public void run() { ConversionService requiredConversionService = router.getRequiredConversionService(); returns.add(requiredConversionService); diff --git a/spring-integration-core/src/test/java/org/springframework/integration/transformer/MapToObjectTransformerTests.java b/spring-integration-core/src/test/java/org/springframework/integration/transformer/MapToObjectTransformerTests.java index 8a9250565d..5505883a82 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/transformer/MapToObjectTransformerTests.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/transformer/MapToObjectTransformerTests.java @@ -31,8 +31,8 @@ import org.springframework.context.support.GenericApplicationContext; import org.springframework.context.support.StaticApplicationContext; import org.springframework.core.convert.converter.Converter; import org.springframework.core.convert.converter.ConverterRegistry; -import org.springframework.integration.context.IntegrationContextUtils; import org.springframework.integration.support.MessageBuilder; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.integration.test.util.TestUtils; import org.springframework.messaging.Message; @@ -104,7 +104,7 @@ public class MapToObjectTransformerTests { MapToObjectTransformer transformer = new MapToObjectTransformer(Person.class); BeanFactory beanFactory = this.getBeanFactory(); ConverterRegistry conversionService = - beanFactory.getBean(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, ConverterRegistry.class); + beanFactory.getBean(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, ConverterRegistry.class); conversionService.addConverter(new StringToAddressConverter()); transformer.setBeanFactory(beanFactory); @@ -119,7 +119,7 @@ public class MapToObjectTransformerTests { private BeanFactory getBeanFactory() { GenericApplicationContext ctx = TestUtils.createTestApplicationContext(); - ctx.registerBeanDefinition(IntegrationContextUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, + ctx.registerBeanDefinition(IntegrationUtils.INTEGRATION_CONVERSION_SERVICE_BEAN_NAME, new RootBeanDefinition("org.springframework.integration.context.CustomConversionServiceFactoryBean")); ctx.refresh(); return ctx; @@ -183,6 +183,7 @@ public class MapToObjectTransformerTests { public class StringToAddressConverter implements Converter { + @Override public Address convert(String source) { Address address = new Address(); address.setStreet(source); diff --git a/spring-integration-http/src/main/java/org/springframework/integration/http/support/DefaultHttpHeaderMapper.java b/spring-integration-http/src/main/java/org/springframework/integration/http/support/DefaultHttpHeaderMapper.java index 00cbe35504..a60c5717d5 100644 --- a/spring-integration-http/src/main/java/org/springframework/integration/http/support/DefaultHttpHeaderMapper.java +++ b/spring-integration-http/src/main/java/org/springframework/integration/http/support/DefaultHttpHeaderMapper.java @@ -47,8 +47,8 @@ import org.springframework.core.convert.TypeDescriptor; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.MediaType; -import org.springframework.integration.context.IntegrationContextUtils; import org.springframework.integration.mapping.HeaderMapper; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.messaging.MessageHeaders; import org.springframework.util.Assert; import org.springframework.util.CollectionUtils; @@ -402,7 +402,7 @@ public class DefaultHttpHeaderMapper implements HeaderMapper, BeanF @Override public void afterPropertiesSet() throws Exception { if (this.beanFactory != null){ - this.conversionService = IntegrationContextUtils.getConversionService(this.beanFactory); + this.conversionService = IntegrationUtils.getConversionService(this.beanFactory); } } diff --git a/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/support/XPathExpressionEvaluatingHeaderValueMessageProcessor.java b/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/support/XPathExpressionEvaluatingHeaderValueMessageProcessor.java index 4e9e6a4202..7fd45dc301 100644 --- a/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/support/XPathExpressionEvaluatingHeaderValueMessageProcessor.java +++ b/spring-integration-xml/src/main/java/org/springframework/integration/xml/transformer/support/XPathExpressionEvaluatingHeaderValueMessageProcessor.java @@ -23,7 +23,7 @@ import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanFactoryAware; import org.springframework.core.convert.ConversionService; import org.springframework.core.convert.TypeDescriptor; -import org.springframework.integration.context.IntegrationContextUtils; +import org.springframework.integration.support.utils.IntegrationUtils; import org.springframework.integration.transformer.support.HeaderValueMessageProcessor; import org.springframework.integration.util.BeanFactoryTypeConverter; import org.springframework.integration.xml.DefaultXmlPayloadConverter; @@ -86,7 +86,7 @@ public class XPathExpressionEvaluatingHeaderValueMessageProcessor implements Hea @Override public void setBeanFactory(BeanFactory beanFactory) throws BeansException { - ConversionService conversionService = IntegrationContextUtils.getConversionService(beanFactory); + ConversionService conversionService = IntegrationUtils.getConversionService(beanFactory); if (conversionService != null) { this.typeConverter.setConversionService(conversionService); }