Chapter 3. Anatomy of a JMS Message

This chapter focuses on the anatomy of a message: the individual parts that make up a message (headers, properties, and the different kinds of message payloads). Appendixes B and C cover additional information that will prove invaluable as a reference when developing JMS applications. Appendix B provides in-depth information on the purpose and application of JMS headers, and Appendix C covers the rules governing the use of JMS properties. Although you do not need to read these appendixes to understand subsequent chapters in this book, you will need them as a reference when implementing real JMS applications. After you finish reading this chapter, take a look at Appendixes B and C so you’re familiar with their content.

The Message is the most important part of the entire JMS specification. All data and events in a JMS application are communicated with messages, while the rest of JMS exists to facilitate the transfer of messages. Messages are the lifeblood of the system.

A JMS message carries application data and provides event notification. Its role is unique to distributed computing. In RPC-based systems (CORBA, Java RMI, DCOM), a message is a command to execute a method or procedure, which blocks the sender until a reply has been received. A JMS message is not a command; it transfers data and tells the receiver that something has happened. A message doesn’t dictate what the recipient should do and the sender doesn’t wait for a response. This decouples ...

Get Java Message Service, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.