diff --git a/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParser.java b/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParser.java index 6ba73453e8..27948be28b 100644 --- a/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParser.java +++ b/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParser.java @@ -41,14 +41,8 @@ import org.w3c.dom.Element; */ public class JpaOutboundGatewayParser extends AbstractConsumerEndpointParser { - protected boolean shouldGenerateId() { - return false; - } - - protected boolean shouldGenerateIdAsFallback() { - return true; - } + @Override protected BeanDefinitionBuilder parseHandler(Element gatewayElement, ParserContext parserContext) { final BeanDefinitionBuilder jpaExecutorBuilder = JpaParserUtils.getJpaExecutorBuilder(gatewayElement, parserContext); @@ -72,6 +66,7 @@ public class JpaOutboundGatewayParser extends AbstractConsumerEndpointParser { jpaOutboundGatewayBuilder.addConstructorArgReference(jpaExecutorBeanName); IntegrationNamespaceUtils.setValueIfAttributeDefined(jpaOutboundGatewayBuilder, gatewayElement, "gateway-type"); + IntegrationNamespaceUtils.setValueIfAttributeDefined(jpaOutboundGatewayBuilder, gatewayElement, "reply-timeout"); final String replyChannel = gatewayElement.getAttribute("reply-channel"); @@ -81,7 +76,7 @@ public class JpaOutboundGatewayParser extends AbstractConsumerEndpointParser { final Element transactionalElement = DomUtils.getChildElementByTagName(gatewayElement, "transactional"); - if(transactionalElement != null) { + if (transactionalElement != null) { BeanDefinition txAdviceDefinition = JpaParserUtils.configureTransactionAttributes(transactionalElement); ManagedList adviceChain = new ManagedList(); adviceChain.add(txAdviceDefinition); @@ -92,6 +87,7 @@ public class JpaOutboundGatewayParser extends AbstractConsumerEndpointParser { } + @Override protected String getInputChannelAttributeName() { return "request-channel"; } diff --git a/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGatewayFactoryBean.java b/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGatewayFactoryBean.java index a27d029a1e..439027b6c3 100644 --- a/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGatewayFactoryBean.java +++ b/spring-integration-jpa/src/main/java/org/springframework/integration/jpa/outbound/JpaOutboundGatewayFactoryBean.java @@ -52,6 +52,7 @@ public class JpaOutboundGatewayFactoryBean extends AbstractFactoryBean cls){ + public void setUp(String name, Class cls) { context = new ClassPathXmlApplicationContext(name, cls); consumer = this.context.getBean("jpaOutboundGateway", EventDrivenConsumer.class); } diff --git a/spring-integration-jpa/src/test/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParserTests.xml b/spring-integration-jpa/src/test/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParserTests.xml index 9454161d5e..603c0e0c98 100644 --- a/spring-integration-jpa/src/test/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParserTests.xml +++ b/spring-integration-jpa/src/test/java/org/springframework/integration/jpa/config/xml/JpaOutboundGatewayParserTests.xml @@ -23,6 +23,7 @@ gateway-type="RETRIEVING" order="1" request-channel="in" - reply-channel="out"/> + reply-channel="out" + reply-timeout="100"/>