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

JMSReplyTo:如何为VM/Artemis/IBM MQ创建通用Camel路由

JMSReplyTo配置问题(对接嵌入式/独立版ActiveMQ Artemis及IBM MQ)

技术栈

  • Spring Boot 2.5.13
  • Camel 3.18.0
  • JMS
  • 对接目标:嵌入式ActiveMQ Artemis、独立版ActiveMQ Artemis、IBM MQ

目前已实现三者的运行与连接,但在JMSReplyTo配置上遇到以下问题:

正常场景:本地嵌入式Broker

运行无问题,可发送消息至请求队列,并将响应发送至指定的JMSReplyTo队列,代码示例如下:

public void sendRequest(){
    ActiveMQQueue activeMQQueue = new ActiveMQQueue("RESPONSE_QUEUE");
    jmsTemplate.convertAndSend("REQUEST_QUEUE", "Hello", pp -> {
        pp.setJMSReplyTo(activeMQQueue);
        return pp;
    });
}

异常场景:ActiveMQ Artemis控制台操作

通过控制台操作时,接收到的JMSReplyTo对象为ActiveMQDestination类型,导致设置CamelJmsDestination的流程变得复杂。当前使用的Camel代码片段:

.setExchangePattern(ExchangePattern.InOut)
.setHeader("CamelJmsDestination", header("JMSReplyTo"))

疑问

  • 我是不是在做无用功?
  • 是否应该直接获取队列名称手动构造URI?
  • 还是我遗漏了某些逻辑,或是Artemis控制台的使用方式有误?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 08:54:15