如何使用Stomp协议在ActiveMQ / JMS选择器中使用算术条件和运算符

时间:2009-02-20 23:13:11

标签: php activemq stomp

我有几条属性设置的消息。其中一些包含数字数据,虽然我没有尝试在发送消息时明确地向ActiveMQ声明这一点。

当我尝试使用算术条件时,即:<,>,< =,> =和family,我收到错误。 有没有办法通过Stomp使用选择器来使用算术条件?我已经在网上搜索过,只在谷歌上点击了以下内容:http://rubyforge.org/tracker/index.php?func=detail&aid=21378&group_id=1010&atid=3981

这个问题似乎已经在STOMP协议的v1.1中得到解决:http://stomp.codehaus.org/Stomp+v1.1+Ideas

3 个答案:

答案 0 :(得分:2)

目前Stomp将所有属性视为字符串,因此使用算术不起作用。正如您所知,计划在Stomp 1.1中支持属性类型,然后您就可以像在JMS中一样使用它们。

干杯 德扬

答案 1 :(得分:1)

我建议您试用名为Apollo的ActiveMQ子项目。它专注于提供出色的STOMP支持,并且支持数字选择器see the docs

答案 2 :(得分:0)

我发现使用STOMP和ActiveMQ以数字方式对消息进行选择的唯一方法是使用XML消息和XPATH选择器:

要使用XML消息,ActiveMQ需要来自xalan的三个jar:

  • xalan.jar
  • xmlImpl.jar
  • XML-apis.jar

所有三个必须位于CLASSPATH中(即:在activemq / lib目录中)。这三个都可以从xalan二进制包中获得。