You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SpringBoot连接Azure SB不同Topic同名订阅启动报错解决方案咨询

Spring Boot中JMS监听Azure Service Bus不同Topic时同名订阅报错问题

我在Spring Boot应用的Controller中使用@JmsListener连接Azure Service Bus,代码如下:

// Method 1:
@JmsListener(destination = "${topicX}", containerFactory = "topicJmsListenerContainerFactory",
            subscription = "${XXX}")

// Method 2:
@JmsListener(destination = "${topicY}", containerFactory = "topicJmsListenerContainerFactory",
        subscription = "${XXX}")

两个监听分别对应不同Topic,但订阅名称相同。应用启动时出现如下错误:

Caused by: javax.jms.JMSRuntimeException: A non-shared durable subscription is already active with name 'XXX'.

我刚接触Azure Service Bus和Topic,不确定这种配置是否可行,也不清楚不同Topic下是否允许同名订阅。这是接手的代码,需要调试解决问题。我已尝试注释其中一个方法,应用可正常运行,想了解是否有办法同时运行两个方法且不报错。截至2023年1月24日仍未找到相关文档,多数教程都是不同订阅用不同名称,不确定这是JMS的限制还是存在可行方案。

内容的提问来源于stack exchange,提问作者Kikrigen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 15:35:47