Cómo utilizar operadores aritméticos y condiciones en ActiveMQ / JMS selectores utilizando el protocolo Stomp

StackOverflow https://stackoverflow.com/questions/571617

  •  05-09-2019
  •  | 
  •  

Pregunta

Tengo varios mensaje con propiedades establecidas. Algunos de estos contienen datos numéricos, aunque he hecho ningún intento para declarar explícitamente a ActiveMQ al enviar los mensajes.

Cuando intento utilizar condiciones aritméticas, es decir: <,>, <=,> = y la familia, me sale un error. ¿Hay alguna manera de utilizar las condiciones aritméticas usando selectores través pisa fuerte? Ya he buscado en la web y solo recibió los siguientes golpeado en Google: http://rubyforge.org/tracker/index.php?func=detail&aid=21378&group_id=1010&atid=3981

Este problema parece estar en la mesa para ser fijada con v1.1 del protocolo STOMP: http://stomp.codehaus.org/Stomp+v1.1+Ideas

¿Fue útil?

Solución

Le recomiendo que pruebe a cabo el subproyecto ActiveMQ llamada Apolo . Es una enfocado en tener un gran apoyo STOMP y es compatible con los selectores numéricos ver los documentos

Otros consejos

Actualmente Stomp trata a todas las propiedades como cadenas, por lo que el uso de la aritmética no funciona. Como has descubierto, está previsto para soportar tipos de propiedad en Stomp 1.1 y luego usted será capaz de utilizarlas como en JMS.

Saludos Dejan

La única manera que he encontrado para hacer la selección de los mensajes de forma numérica con STOMP y ActiveMQ es usar mensajes XML y selectores XPATH:

Para utilizar los mensajes XML, ActiveMQ requiere tres frascos de xalan:

  • xalan.jar
  • xmlImpl.jar
  • xml-apis.jar

Los tres deben estar en el CLASSPATH (es decir: en el directorio activemq / lib). Los tres están disponibles en el paquete binario xalan.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top