Consuming messages from a JMS queue/topic selectively
A proxy service can be configured to only consume messages that match a given criteria. This is done through the Message Selector in the JMS Transport Advanced Settings. A message selector is a logical statement similar to an SQL WHERE
clause that the JMS provider evaluates against each message header or properties to determine whether the consumer should receive the message.
In this recipe, we will change the proxy service from the previous recipe Consuming messages from a JMS queue to only consume message with a priority higher than 5
.
Getting ready
For this recipe, we will use the queue SourceQueue from the OSB Cookbook standard environment.
You can import the base OSB project containing the solution from the previous recipe into Eclipse from \chapter-3\getting-ready\consuming-messages-from-queue-topic-selectively
.
How to do it...
To add a message selector, which only consumes messages with a priority greater than 5
, perform the following...