From 73f4a0c7de84c148e7288e5375591e3941930bb4 Mon Sep 17 00:00:00 2001 From: Mark Fisher Date: Mon, 19 May 2008 13:45:24 +0000 Subject: [PATCH] Reverted the RuntimeBeanReference to a String value for the constructor-arg of the Subscription object when parsing an endpoint. That is necessary to handle the case where channels are 'auto-created' by the MessageBus on demand (e.g. HelloWorldDemo). --- .../integration/config/AbstractTargetEndpointParser.java | 3 +-- .../integration/samples/helloworld/HelloWorldDemo.java | 1 - .../integration/samples/helloworld/helloWorldDemo.xml | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractTargetEndpointParser.java b/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractTargetEndpointParser.java index a1fcc76f66..f9e21c83db 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractTargetEndpointParser.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/config/AbstractTargetEndpointParser.java @@ -30,7 +30,6 @@ import org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser; import org.springframework.beans.factory.xml.ParserContext; import org.springframework.integration.ConfigurationException; import org.springframework.integration.endpoint.ConcurrencyPolicy; -import org.springframework.integration.handler.DefaultMessageHandlerAdapter; import org.springframework.integration.scheduling.PollingSchedule; import org.springframework.integration.scheduling.Schedule; import org.springframework.integration.scheduling.Subscription; @@ -111,7 +110,7 @@ public abstract class AbstractTargetEndpointParser extends AbstractSingleBeanDef } if (StringUtils.hasText(inputChannel)) { RootBeanDefinition subscriptionDef = new RootBeanDefinition(Subscription.class); - subscriptionDef.getConstructorArgumentValues().addGenericArgumentValue(new RuntimeBeanReference(inputChannel)); + subscriptionDef.getConstructorArgumentValues().addGenericArgumentValue(inputChannel); if (schedule != null) { subscriptionDef.getConstructorArgumentValues().addGenericArgumentValue(schedule); } diff --git a/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/HelloWorldDemo.java b/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/HelloWorldDemo.java index 43571af442..b251b32b6e 100644 --- a/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/HelloWorldDemo.java +++ b/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/HelloWorldDemo.java @@ -38,7 +38,6 @@ public class HelloWorldDemo { MessageChannel outputChannel = channelRegistry.lookupChannel("outputChannel"); inputChannel.send(new StringMessage("World")); System.out.println(outputChannel.receive().getPayload()); - context.stop(); } } diff --git a/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/helloWorldDemo.xml b/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/helloWorldDemo.xml index 7cedc46541..c491f8c3de 100644 --- a/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/helloWorldDemo.xml +++ b/spring-integration-samples/src/main/java/org/springframework/integration/samples/helloworld/helloWorldDemo.xml @@ -9,7 +9,7 @@ -