diff --git a/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/config/ListenerContainerParser.java b/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/config/ListenerContainerParser.java index f2c7c1da..015883bc 100644 --- a/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/config/ListenerContainerParser.java +++ b/spring-rabbit/src/main/java/org/springframework/amqp/rabbit/config/ListenerContainerParser.java @@ -79,6 +79,9 @@ class ListenerContainerParser implements BeanDefinitionParser { private static final String PHASE_ATTRIBUTE = "phase"; + private static final String ADVICE_CHAIN_ATTRIBUTE = "advice-chain"; + + public BeanDefinition parse(Element element, ParserContext parserContext) { CompositeComponentDefinition compositeDef = new CompositeComponentDefinition(element.getTagName(), parserContext.extractSource(element)); @@ -243,6 +246,11 @@ class ListenerContainerParser implements BeanDefinitionParser { containerDef.getPropertyValues().add("phase", phase); } + String adviceChain = containerEle.getAttribute(ADVICE_CHAIN_ATTRIBUTE); + if (StringUtils.hasText(adviceChain)) { + containerDef.getPropertyValues().add("adviceChain", adviceChain); + } + return containerDef; }