Description of problem: Using CLI is possible to set message selector on queue to any string value. Such selector does not have to correspond to message selector syntax. How reproducible: Add queue: /subsystem=messaging/hornetq-server=default/jms-queue=testQueue:add(durable=true,entries=["java:jboss/exported/jms/queue/testQueue"] Set message selector with bad value: /subsystem=messaging/hornetq-server=default/jms-queue=testQueue:write-attribute(name=selector,value="dsa=AND$2==^#%!=fasd") { "outcome" => "success", "response-headers" => { "operation-requires-reload" => true, "process-state" => "reload-required" } } Expected results: This should fail with description of proper grammar.
HornetQ does not expose any functionality to determine the correctness of a message selector. Either it needs to provide it or it should check it at runtime when the queue is created.
JMS specification 1.1 [1] describes message selector syntax in chapter: 3.8.1.1 Message Selector Syntax [1] http://docs.oracle.com/cd/E19957-01/816-5904-10/816-5904-10.pdf
I believe had already changed this on wildfly/master. The issue here is that a queue's filter is a read only property. Was this changed on 6.x as well? if so, this is just a close
Yes, message-selector attribute should be read-only. Jeff has already created PR in bz#1004789. I'll close this bz as duplicate. *** This bug has been marked as a duplicate of bug 1004789 ***