Skip to Content
Java Enterprise in a Nutshell, Third Edition
book

Java Enterprise in a Nutshell, Third Edition

by Jim Farley, William Crawford
November 2005
Intermediate to advanced
896 pages
31h 5m
English
O'Reilly Media, Inc.
Content preview from Java Enterprise in a Nutshell, Third Edition

Appendix E. JMS Message Selector Syntax

JMS message selectors are used by JMS clients to filter the messages that a JMS server delivers to a given MessageConsumer. A message selector is provided (optionally) when a MessageConsumer is created, using either the QueueSession. createReceiver() or the TopicSession.createSubscriber() method.

A message selector is a string that specifies a predicate to be applied to each message that the provider wants to deliver to a MessageConsumer. If the predicate evaluates to true, then the message is delivered; if false, then the message is not delivered. In point-to-point messaging, when messages are filtered out by a message selector, the message will remain on the queue until the client eventually reads it or the message times out and the server removes it from the queue. In publish-subscribe messaging, messages that are filtered are never delivered to the subscriber.

In this chapter, we provide the full syntax of JMS message selectors. For more details on using JMS in general, see the tutorial in Chapter 11.

Structure of a Selector

A message selector is made up of one or more Boolean expressions, joined together by logical operators and grouped using parentheses. For example:

(<expression1> OR <expression2> AND <expression3>) OR

    (<expression4> AND NOT <expression5>) . . .

A message selector is evaluated left to right in precedence order. So in this example, expression2 will be evaluated followed by expression3 (since AND has higher precedence than ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Java Enterprise in a Nutshell, Second Edition

Java Enterprise in a Nutshell, Second Edition

William Crawford, Jim Farley, David Flanagan
Modernizing Enterprise Java

Modernizing Enterprise Java

Markus Eisele, Natale Vinto

Publisher Resources

ISBN: 0596101422Catalog PageErrata