In the producer code, when creating the Message object:

message.setStringProperty("myFilterProperty", "my consumerID");

In the consumer (QueueReceiver or Message Driven Bean), define the message 
selector expression (SQL syntax) as myFilterPropert='my consumerID'

ActiveMQ should dispatch only the messages matching the filter. Others will 
stay in the queue, I would also set the TTL in the producer (optional though).

________________________________________
From: alanchb [alanchbm...@gmail.com]
Sent: 18 May 2010 12:24
To: users@activemq.apache.org
Subject: RE: How to post message to a certain queue consumer?

Thanks for your reply.

but how to use message selector to identify a consumer when producer send a
message?


Cristian Botiza wrote:
>
> Message selectors?
>
> ________________________________________
> From: alanchb [alanchbm...@gmail.com]
> Sent: 18 May 2010 11:12
> To: users@activemq.apache.org
> Subject: How to post message to a certain queue consumer?
>
> under the P2P mode,if i have sevaral queue consumers,how to make the
> producer
> post message to the consumer he wants?
> --
> View this message in context:
> http://old.nabble.com/How-to-post-message-to-a-certain-queue-consumer--tp28592826p28592826.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
> The information in this email is confidential and may be legally
> privileged. It is intended solely for the addressee. Any opinions
> expressed are mine and do not necessarily represent the opinions of the
> Company. Emails are susceptible to interference. If you are not the
> intended recipient, any disclosure, copying, distribution or any action
> taken or omitted to be taken in reliance on it, is strictly prohibited and
> may be unlawful. If you have received this message in error, do not open
> any attachments but please notify the EndavaIT Service Desk on (+44 (0)870
> 423 0187), and delete this message from your system. The sender accepts no
> responsibility for information, errors or omissions in this email, or for
> its use or misuse, or for any act committed or omitted in connection with
> this communication. If in doubt, please verify the authenticity of the
> contents with the sender. Please rely on your own virus checkers as no
> responsibility is taken by the sender for any damage rising out of any bug
> or virus infection.
>
> Endava Limited is a company registered in England under company number
> 5722669 whose registered office is at 125 Old Broad Street, London, EC2N
> 1AR, United Kingdom. Endava Limited is the Endava group holding company
> and does not provide any services to clients. Each of Endava Limited and
> its subsidiaries is a separate legal entity and has no liability for
> another such entity's acts or omissions. Please refer to the “Legal”
> section on our website for a list of legal entities.
>
>

--
View this message in context: 
http://old.nabble.com/How-to-post-message-to-a-certain-queue-consumer--tp28592826p28593473.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

The information in this email is confidential and may be legally privileged. It 
is intended solely for the addressee. Any opinions expressed are mine and do 
not necessarily represent the opinions of the Company. Emails are susceptible 
to interference. If you are not the intended recipient, any disclosure, 
copying, distribution or any action taken or omitted to be taken in reliance on 
it, is strictly prohibited and may be unlawful. If you have received this 
message in error, do not open any attachments but please notify the EndavaIT 
Service Desk on (+44 (0)870 423 0187), and delete this message from your 
system. The sender accepts no responsibility for information, errors or 
omissions in this email, or for its use or misuse, or for any act committed or 
omitted in connection with this communication. If in doubt, please verify the 
authenticity of the contents with the sender. Please rely on your own virus 
checkers as no responsibility is taken by the sender for any damage rising out 
of any bug or virus infection.

Endava Limited is a company registered in England under company number 5722669 
whose registered office is at 125 Old Broad Street, London, EC2N 1AR, United 
Kingdom. Endava Limited is the Endava group holding company and does not 
provide any services to clients. Each of Endava Limited and its subsidiaries is 
a separate legal entity and has no liability for another such entity's acts or 
omissions. Please refer to the “Legal” section on our website for a list of 
legal entities.

Reply via email to