diff --git a/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/BroadcastingDispatcher.java b/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/BroadcastingDispatcher.java index 22ec337091..75dccae4de 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/BroadcastingDispatcher.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/BroadcastingDispatcher.java @@ -144,7 +144,7 @@ public class BroadcastingDispatcher extends AbstractDispatcher { catch (RuntimeException e) { if (!this.ignoreFailures) { if (e instanceof MessagingException && ((MessagingException) e).getFailedMessage() == null) { - ((MessagingException) e).setFailedMessage(message); + throw new MessagingException(message, e); } throw e; } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/UnicastingDispatcher.java b/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/UnicastingDispatcher.java index b14a7a8b91..cdc3871a58 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/UnicastingDispatcher.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/dispatcher/UnicastingDispatcher.java @@ -122,7 +122,7 @@ public class UnicastingDispatcher extends AbstractDispatcher { "Dispatcher failed to deliver Message.", e); if (e instanceof MessagingException && ((MessagingException) e).getFailedMessage() == null) { - ((MessagingException) e).setFailedMessage(message); + runtimeException = new MessagingException(message, e); } exceptions.add(runtimeException); this.handleExceptions(exceptions, message, !handlerIterator.hasNext()); diff --git a/spring-integration-core/src/main/java/org/springframework/integration/handler/advice/RequestHandlerRetryAdvice.java b/spring-integration-core/src/main/java/org/springframework/integration/handler/advice/RequestHandlerRetryAdvice.java index 6d8ca8c547..68e1258725 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/handler/advice/RequestHandlerRetryAdvice.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/handler/advice/RequestHandlerRetryAdvice.java @@ -89,7 +89,7 @@ public class RequestHandlerRetryAdvice extends AbstractRequestHandlerAdvice } catch (MessagingException e) { if (e.getFailedMessage() == null) { - e.setFailedMessage(message); + throw new MessagingException(message, e); } throw e; } diff --git a/spring-integration-core/src/main/java/org/springframework/integration/support/converter/MapMessageConverter.java b/spring-integration-core/src/main/java/org/springframework/integration/support/converter/MapMessageConverter.java index ccdd86b48d..b7f8021a86 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/support/converter/MapMessageConverter.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/support/converter/MapMessageConverter.java @@ -22,7 +22,7 @@ import java.util.Map; import org.springframework.integration.support.MessageBuilder; import org.springframework.messaging.Message; import org.springframework.messaging.MessageHeaders; -import org.springframework.messaging.support.converter.MessageConverter; +import org.springframework.messaging.converter.MessageConverter; import org.springframework.util.Assert; /** diff --git a/spring-integration-core/src/main/java/org/springframework/integration/support/converter/SimpleMessageConverter.java b/spring-integration-core/src/main/java/org/springframework/integration/support/converter/SimpleMessageConverter.java index 738c0cc574..b6396758cf 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/support/converter/SimpleMessageConverter.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/support/converter/SimpleMessageConverter.java @@ -21,8 +21,8 @@ import org.springframework.integration.mapping.OutboundMessageMapper; import org.springframework.integration.support.MessageBuilder; import org.springframework.messaging.Message; import org.springframework.messaging.MessageHeaders; -import org.springframework.messaging.support.converter.MessageConversionException; -import org.springframework.messaging.support.converter.MessageConverter; +import org.springframework.messaging.converter.MessageConversionException; +import org.springframework.messaging.converter.MessageConverter; /** * @author Mark Fisher diff --git a/spring-integration-core/src/test/java/org/springframework/integration/endpoint/ReturnAddressTests.java b/spring-integration-core/src/test/java/org/springframework/integration/endpoint/ReturnAddressTests.java index 78d305797d..c87a157fcb 100644 --- a/spring-integration-core/src/test/java/org/springframework/integration/endpoint/ReturnAddressTests.java +++ b/spring-integration-core/src/test/java/org/springframework/integration/endpoint/ReturnAddressTests.java @@ -19,15 +19,18 @@ package org.springframework.integration.endpoint; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; import org.junit.Test; + import org.springframework.context.support.ClassPathXmlApplicationContext; -import org.springframework.messaging.support.GenericMessage; import org.springframework.integration.support.MessageBuilder; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; +import org.springframework.messaging.MessagingException; import org.springframework.messaging.PollableChannel; import org.springframework.messaging.core.DestinationResolutionException; +import org.springframework.messaging.support.GenericMessage; /** * @author Mark Fisher @@ -98,14 +101,19 @@ public class ReturnAddressTests { assertNull(channel2.receive(0)); } - @Test(expected = DestinationResolutionException.class) + @Test public void returnAddressFallbackButNotAvailable() { ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext( "returnAddressTests.xml", this.getClass()); MessageChannel channel3 = (MessageChannel) context.getBean("channel3"); context.start(); GenericMessage message = new GenericMessage("*"); - channel3.send(message); + try { + channel3.send(message); + } + catch (MessagingException e) { + assertTrue(e.getCause() instanceof DestinationResolutionException); + } } @Test diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/MessageConvertingTcpMessageMapper.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/MessageConvertingTcpMessageMapper.java index 6b9737d4e2..90fa7388f2 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/MessageConvertingTcpMessageMapper.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/MessageConvertingTcpMessageMapper.java @@ -17,7 +17,7 @@ package org.springframework.integration.ip.tcp.connection; import org.springframework.integration.support.MessageBuilder; import org.springframework.messaging.Message; -import org.springframework.messaging.support.converter.MessageConverter; +import org.springframework.messaging.converter.MessageConverter; import org.springframework.util.Assert; /** diff --git a/spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/config/JdbcPollingChannelAdapterParserTests.java b/spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/config/JdbcPollingChannelAdapterParserTests.java index a05d162978..6aabbc5fd2 100644 --- a/spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/config/JdbcPollingChannelAdapterParserTests.java +++ b/spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/config/JdbcPollingChannelAdapterParserTests.java @@ -30,8 +30,10 @@ import javax.sql.DataSource; import org.junit.After; import org.junit.Test; + import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; +import org.springframework.integration.core.MessagingTemplate; import org.springframework.integration.endpoint.SourcePollingChannelAdapter; import org.springframework.integration.history.MessageHistory; import org.springframework.integration.test.util.TestUtils; @@ -40,7 +42,6 @@ import org.springframework.jdbc.core.namedparam.AbstractSqlParameterSource; import org.springframework.messaging.Message; import org.springframework.messaging.MessageChannel; import org.springframework.messaging.PollableChannel; -import org.springframework.integration.core.MessagingTemplate; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.TransactionStatus; import org.springframework.transaction.support.TransactionCallback; @@ -150,7 +151,8 @@ public class JdbcPollingChannelAdapterParserTests { }); int count = 0; while (count < 4) { - Message> message = messagingTemplate.receive(); + @SuppressWarnings("unchecked") + Message> message = (Message>) messagingTemplate.receive(); assertNotNull(message); int payloadSize = message.getPayload().size(); assertTrue(payloadSize <= 2); diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/channel/SubscribableRedisChannel.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/channel/SubscribableRedisChannel.java index 0909b3adb3..c21e52ad26 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/channel/SubscribableRedisChannel.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/channel/SubscribableRedisChannel.java @@ -42,7 +42,7 @@ import org.springframework.messaging.Message; import org.springframework.messaging.MessageDeliveryException; import org.springframework.messaging.MessageHandler; import org.springframework.messaging.SubscribableChannel; -import org.springframework.messaging.support.converter.MessageConverter; +import org.springframework.messaging.converter.MessageConverter; import org.springframework.util.Assert; import org.springframework.util.ErrorHandler; import org.springframework.util.StringUtils; diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisInboundChannelAdapter.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisInboundChannelAdapter.java index e58b4228fd..c7497a256b 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisInboundChannelAdapter.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/inbound/RedisInboundChannelAdapter.java @@ -30,7 +30,7 @@ import org.springframework.data.redis.serializer.StringRedisSerializer; import org.springframework.integration.endpoint.MessageProducerSupport; import org.springframework.integration.support.converter.SimpleMessageConverter; import org.springframework.messaging.Message; -import org.springframework.messaging.support.converter.MessageConverter; +import org.springframework.messaging.converter.MessageConverter; import org.springframework.util.Assert; /** diff --git a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java index 556400d177..d10b218b80 100644 --- a/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java +++ b/spring-integration-redis/src/main/java/org/springframework/integration/redis/outbound/RedisPublishingMessageHandler.java @@ -27,7 +27,7 @@ import org.springframework.integration.expression.IntegrationEvaluationContextAw import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.integration.support.converter.SimpleMessageConverter; import org.springframework.messaging.Message; -import org.springframework.messaging.support.converter.MessageConverter; +import org.springframework.messaging.converter.MessageConverter; import org.springframework.util.Assert; /**