Java 如何使用JMSTemplate和选择器从ActiveMQ接收消息?
我正在尝试获取持久activemq队列上的消息 如果我打电话Java 如何使用JMSTemplate和选择器从ActiveMQ接收消息?,java,spring,jms,activemq,Java,Spring,Jms,Activemq,我正在尝试获取持久activemq队列上的消息 如果我打电话 jmsTemplate.receive("queue.response") 我收到一条消息。但是如果我打电话 jmsTemplate.receiveSelected("queue.response", "JMSCorrelationId='1854044'") 我在等待时超时 我正在使用ActiveMQ web控制台查看队列,可以看到消息已经准备好被使用了。相关ID在控制台中可见,我也可以在通过直接接收(“队列…”调用接收的消息中
jmsTemplate.receive("queue.response")
我收到一条消息。但是如果我打电话
jmsTemplate.receiveSelected("queue.response", "JMSCorrelationId='1854044'")
我在等待时超时
我正在使用ActiveMQ web控制台查看队列,可以看到消息已经准备好被使用了。相关ID在控制台中可见,我也可以在通过直接接收(“队列…”调用接收的消息中看到它们
可能我的实际选择器有问题,但我能找到的每个示例看起来都像我得到的
知道我做错了什么吗?Facepalm!JMSCorrelationID区分大小写。我正在尝试使用JMSCOrrationId…您是否尝试不使用“环绕Id值”功能?您确定您的关联Id正确吗?@Carlo:是的,尝试时没有使用“环绕Id值”功能。结果是它会拾取所有消息,我猜这是因为选择器无效。@Nico:Yep,double triple和Fourple检查了相关id。我正在直接从webconsole复制到我的代码中。您设置了相关id()吗?