13.2. 过滤 JMS 消息属性


JMS 规范指出,在选择器中使用时,String 属性不能转换为数字类型。例如,如果消息的 age 属性设置为 String 值 21,则选择器 age > 18 必须与它不匹配。此限制限制 STOMP 客户端,因为它们只能使用 String 属性发送消息。

配置 Filter 以将字符串转换为数字

要将 String 属性转换为数字类型,请将前缀 convert_string_expressions: 添加到 过滤器 的值。

流程

  • 通过将前缀 convert_string _expressions: 应用到所需 过滤器 来编辑 <broker_instance_dir> / etc/broker.xml。以下示例编辑 age > 18 的过滤器 值以 convert_string_expressions:age > 18

    <configuration>
      <core>
        ...
        <addresses>
            <address name="myQueue">
               <anycast>
                  <queue name="myQueue">
                    <filter string="convert_string_expressions='age > 18'"/>
                  </queue>
               </anycast>
            </address>
         </addresses>
       </core>
    </configuration>
    Copy to Clipboard Toggle word wrap
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat