You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by mohank <mo...@eventtracker.com.INVALID> on 2020/05/27 18:20:00 UTC

Re: Message Filters - C++ API

>>With qpid::messaging you use an address of the form:

>>    my-queue; {link:{filter:{name:jms-selector,
>>descriptor:'apache.org:selector-filter:string', value:'myProperty=7'}}}

This kind of address syntax always throws exception 
EX : for above address 
       Receiver receiver = session.createReceiver("'my-queue'; {link:
{filter: {name:jms - selector,descriptor :
'apache.org:selector-filter:string', value : 'myProperty=7'}}}");

got exception : Unmatched '{'!, character 38 of 'my-queue'; {link: {filter:
{name:jms - selector,descriptor : 'apache.org:selector-filter:string', value
: 'myProperty=7'}}}

My environment setup is ,
OS: Windows
Client : QPID C++ 1.36 AMQP 1.0
Broker : Rabbitmq 3.8

If this syntax is not supported in RabbitMQ broker (then which broker
supports complete AMQP 1.0 feature)or not supported in AMQP 1.0
		

Thanks,
Mohan



--
Sent from: http://qpid.2158936.n2.nabble.com/Apache-Qpid-users-f2158936.html

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Re: Message Filters - C++ API

Posted by Gordon Sim <gs...@redhat.com>.
On 27/05/2020 7:20 pm, mohank wrote:
>>> With qpid::messaging you use an address of the form:
> 
>>>     my-queue; {link:{filter:{name:jms-selector,
>>> descriptor:'apache.org:selector-filter:string', value:'myProperty=7'}}}
> 
> This kind of address syntax always throws exception
> EX : for above address
>         Receiver receiver = session.createReceiver("'my-queue'; {link:
> {filter: {name:jms - selector,descriptor :
> 'apache.org:selector-filter:string', value : 'myProperty=7'}}}");
> 
> got exception : Unmatched '{'!, character 38 of 'my-queue'; {link: {filter:
> {name:jms - selector,descriptor : 'apache.org:selector-filter:string', value
> : 'myProperty=7'}}}
> 
> My environment setup is ,
> OS: Windows
> Client : QPID C++ 1.36 AMQP 1.0
> Broker : Rabbitmq 3.8
> 
> If this syntax is not supported in RabbitMQ broker (then which broker
> supports complete AMQP 1.0 feature)or not supported in AMQP 1.0

The syntax doesn't get seen by RabbitMQ, it is interpreted by the client 
(which then sends the filter in the AMQP 1.0 encoding to the broker). 
 From an initial glance I suspect the error may be due to "jms - 
selector" not being in single quotes in spite of having spaces?

However RabbitMQ does not support filters anyway 
(https://github.com/rabbitmq/rabbitmq-amqp1.0#limitations-and-unsupported-features).

In terms of brokers with support for AMQP 1.0, there are several. The 
Qpid java broker supports all versions of AMQP and has very good AMQP 
1.0 support including filters. The Qpid c++ broker supports AMQP 0-10 
and AMQP 1.0 and also supports selectors. Both ActiveMQ 5 and ActiveMQ 
Artemis also support AMQP 1.0.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org