diff --git a/spring-integration-jms/src/main/java/org/springframework/integration/jms/config/JmsAdapterParserUtils.java b/spring-integration-jms/src/main/java/org/springframework/integration/jms/config/JmsAdapterParserUtils.java index 344d10f9b1..e2f466ca42 100644 --- a/spring-integration-jms/src/main/java/org/springframework/integration/jms/config/JmsAdapterParserUtils.java +++ b/spring-integration-jms/src/main/java/org/springframework/integration/jms/config/JmsAdapterParserUtils.java @@ -57,7 +57,7 @@ abstract class JmsAdapterParserUtils { private static final String[] JMS_TEMPLATE_ATTRIBUTES = { "connection-factory", "message-converter", "destination-resolver", "pub-sub-domain", - "time-to-live", "priority", "delivery-persistent", "explicit-qos-enabled" + "time-to-live", "priority", "delivery-persistent", "explicit-qos-enabled", "acknowledge" }; @@ -123,6 +123,11 @@ abstract class JmsAdapterParserUtils { IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "priority"); IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "delivery-persistent"); IntegrationNamespaceUtils.setValueIfAttributeDefined(builder, element, "explicit-qos-enabled"); + Integer acknowledgeMode = parseAcknowledgeMode(element, parserContext); + if (acknowledgeMode != null){ + builder.addPropertyValue("sessionAcknowledgeMode", acknowledgeMode); + } + return builder.getBeanDefinition(); } diff --git a/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-2.0.xsd b/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-2.0.xsd index d8f547644d..aecb4abb50 100644 --- a/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-2.0.xsd +++ b/spring-integration-jms/src/main/resources/org/springframework/integration/jms/config/spring-integration-jms-2.0.xsd @@ -872,7 +872,7 @@ - + + + + +