【问题标题】:Spring expression language (SpEL) with jms selector带有 jms 选择器的 Spring 表达式语言 (SpEL)
【发布时间】:2016-01-27 22:12:58
【问题描述】:

我们需要根据应用程序属性中定义的环境属性来隔离传入的消息。我提出了以下配置,但不起作用,有什么建议吗?

@JmsListener(id = "queueListener", destination = "${request.jms.queue}", containerFactory = "requestJmsListenerContainerFactory", selector = "ENV=${jms.env}")
public void onMessage(final Message message, MessageHeaders headers)

每条消息都有 ENV 属性,“jms.env”应用程序属性可以有值,例如DEV、UAT 等。我们正在使用 Spring 4 和 Websphere JMS

【问题讨论】:

  • 什么不起作用?
  • 这个监听器不工作,我没有收到这个监听器接收到的任何消息..所以我猜选择器表达式在这里不工作

标签: jms spring-jms


【解决方案1】:

这在我们更改选择器表达式以在值部分周围添加引号后开始工作,即“ENV='${jms.env}'”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-14
    • 2011-07-16
    • 1970-01-01
    • 1970-01-01
    • 2011-10-04
    • 2012-05-24
    • 2013-12-10
    相关资源
    最近更新 更多