zl程序教程

您现在的位置是:首页 >  其它

当前栏目

Configuration problem: Id is required for element ‘queue-arguments‘ when used as a top-level tag

for is ID as Element Top when Queue
2023-09-11 14:22:31 时间

SpringBoot整合RabbitMQ报错

Caused by: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Configuration problem: Id is required for element ‘queue-arguments’ when used as a top-level tag

在这里插入图片描述
原因是配置配置交换机一些属性的时候,使用 rabbit:queue标签没有把rabbit:queue-arguments标签闭合进去,也就是参数配置没有加载成功
在这里插入图片描述
正确写法
在这里插入图片描述
示例代码

 <!-- 1 声明正常队列和交换机test_queue_dlx   test_exchange_dlx-->
    <rabbit:queue id="test_queue_dlx" name="test_queue_dlx">
        <!-- 3正常队列绑定死信交换机 使用arguments和entry设置参数-->
        <rabbit:queue-arguments>
            <!--3.1死信交换机名称  x-dead-letter-exchange-->
            <entry key="x-dead-letter-exchange" value="exchange_dlx"/>
            <!--3.2发送给死信交换机的路由键 x-dead-letter-routing-key-->
            <entry key="x-dead-letter-routing-key" value="dlx.hehe"/>
            <!--4让消息完成死信-->
            <!--4.1 设置队列过期时间 ttl 10s-->
            <entry key="x-message-ttl" value="10000" value-type="java.lang.Integer"/>
            <!--4.2 设置队列的长度限制 max_length-->
            <entry key="x-max-length" value="10" value-type="java.lang.Integer"/>
        </rabbit:queue-arguments>
    </rabbit:queue>