Spring integration 有没有办法使用Spring集成消息对象获取JMSMessageID

Spring integration 有没有办法使用Spring集成消息对象获取JMSMessageID,spring-integration,Spring Integration,我们需要传递JMSMessageID(由IBM Mq Queuemanger生成)。 我的问题是如何填充MessageHeader中的值 org.springframework.messaging.MessageHeaders并将其传递给my Activator。是 将把入站JmsMessageId作为头jms_messageId添加到spring集成消息的消息头。是,正在填充jms_messageId。我使用的是一个JUNIT测试,它没有经过Quemanager,因此那些头值不是由我的程序设置

我们需要传递JMSMessageID(由IBM Mq Queuemanger生成)。 我的问题是如何填充MessageHeader中的值 org.springframework.messaging.MessageHeaders并将其传递给my Activator。


将把入站
JmsMessageId
作为头
jms_messageId
添加到spring集成消息的消息头。

是,正在填充jms_messageId。我使用的是一个JUNIT测试,它没有经过Quemanager,因此那些头值不是由我的程序设置的,所以我更改了JUNIT以复制它工作的头。 非常感谢

在我的少年时代是这样的

    Map<String, String> headersToCopy = new HashMap<String, String>();
    headersToCopy.put("JMSXUserID", "suren");
    headersToCopy.put("jms_messageId", "ID:1234567894444444444444");
    headersToCopy.put("JMS_IBM_MsgType", "8");
    headersToCopy.put("JMSXDeliveryCount", "1");
Map headersToCopy=newhashmap();
headersToCopy.put(“JMSXUserID”、“suren”);
headersToCopy.put(“jms_messageId”,“ID:123456789444”);
headersToCopy.put(“JMS_IBM_MsgType”,“8”);
headersToCopy.put(“JMSXDeliveryCount”,“1”);

你是在读还是在写?啊,那就简单了。你试过了吗?默认情况下,它应该可以正常工作。不,默认情况下,我只是在头中有时间戳和UUID,没有JMSMessageId。如果有帮助,我们将使用消息驱动的通道适配器(读取)。消息系统将分配这些适配器。-正如您所说,我需要使用消息传递系统分配的内容。public-Map-toHeaders(javax.jms.Message-jmsMessage)——这个方法应该可以做到,但由于某些原因,我看不到它们所有的适配器都实现了吗?