Java Message Service
March 16, 2010 by BPELworld.com
- ISBN13: 9780596522049
- Condition: NEW
- Notes: Brand New from Publisher. No Remainder Mark.
Product Description
Java Message Service, Second Edition, is a thorough introduction to the standard API that supports “messaging” — the software-to-software exchange of crucial data among network computers. You’ll learn how JMS can help you solve many architectural challenges, such as integrating dissimilar systems and applications, increasing scalability, eliminating system bottlenecks, supporting concurrent processing, and promoting flexibility and agility.
Updated for JMS 1.1, this second edition also explains how this vendor-agnostic specification will help you write messaging-based applications using IBM’s MQ, Progress Software’s SonicMQ, ActiveMQ, and many other proprietary messaging services.
With Java Message Service, you will:
- Build applications using point-to-point and publish-and-subscribe messaging models
- Use features such as transactions and durable subscriptions to make an application reliable
- Implement messaging within Enterprise JavaBeans (EJB) using message-driven beans
- Use JMS with RESTful applications and with the Spring application framework
Messaging is a powerful paradigm that makes it easier to uncouple different parts of an enterprise application. Java Message Service, Second Edition, will quickly teach you how to use the key technology that lies behind it.
Amazon.com Review
The Java Message Service (JMS) provides a way for the components of a distributed application to talk asynchronously, or for welding together legacy enterprise systems. Think of it as application-to-application e-mail. Unlike COM, JMS uses one or more JMS servers to handle the messages on a store-and-forward basis, so that the loss of one or more components doesn’t bring the whole distributed application to a halt.
JMS consists of a set of messaging APIs that enable two types of messaging, publish-and-subscribe (one-to-many) and point-to-point (one-to-one). The highly lucid explanation of the ways in which these work makes the technical content a lot more approachable. In practice, however, Java Message Service is still a book for Java programmers who have some business programming experience. You need the background.
After a simple JMS demonstration in which you create a chat application using both messaging types, the authors dissect JMS message structures, explore both types in detail, and then move on to real-world considerations. These include reliability, security, deployment, and a rundown of various JMS server providers. The appendices list and describe the JMS API, and provide message reference material.
Considering the complexity and reach of the subject matter, Java Message Service does a great job of covering both theory and practice in a surprisingly efficient manner. It’s easy to see why JMS has become so popular so quickly. Recommended. –Steve Patient, Amazon.co.uk
Buy from Amazon –> Java Message Service

















Java Message Service (JMS) is relatively new and this is the first book out on the subject. Others are in the offing. This book will be of more interest to Java programmers unfamiliar with message-oriented middleware (MOM) than to more knowledgeable programmers.
The first chapter introduces MOM. There are two models that a JMS provider might implement — point-to-point (or queue) and publish/subscribe messaging. The second chapter develops a simple pub/sub example, a chat room application. The third chapter discusses messages in some detail — headers, types, and selectors. Selectors allow a receiver to be selective about which messages it’s interested in receiving. Among other things, a selector can be used to match a reply to a request.
Chapters 4 and 5 are devoted to pub/sub and point-to-point, respectively. For both, simple applications are developed for illustration. Chapter 6 discusses a variety of topics, for example, guaranteed messaging, that is, once-and-only-once delivery. Chapter 7 is devoted to deployment considerations, including performance and security. Chapter 7 discusses JMS in the context of J2EE and EJBs. Chapter 8 provides an overview of some JMS providers. One would do well to go to the Sun website instead, as it is more inclusive. There are appendices on the JMS API, message headers, and message properties.
There is the usual smattering of misprints. Then on page 112, there is a serious error. The authors say, “Unless you are doing a synchronous request-reply, you should avoid grouping a send followed by an asynchronous receive within a transaction.” Even with request-reply, you don’t want to group a send followed by a receive within a transaction. The reason is simple — deadlock. The sending application sends a request and does a receive with wait for the reply. Within a transaction, the sent request is not committed until the reply is received and so, is not visible to any potential receiving application until then. Of course, a receiving application won’t send a reply until it receives a request. The result is deadlock.
Rating: 3 / 5
You should better read the JMS spec and the JMS tutorial from the JavaSoft JMS site. This book here is a SonicMQ marketing broschure and nothing more.
Rating: 1 / 5
The specs from Sun cover much more details and are organized in much more natural way than the book. If you are not a total Java newbie, I would suggest reading the specs. They are dry, but they are much more useful in giving you a more complete picture of JMS, in my opinion.
Rating: 1 / 5
The basics were covered, but I felt this book was a little outdated. There werent alot of books to choose from so I chose this book because it seemed like it had the most coverage.
Rating: 3 / 5
If you’re looking to learn JMS, then this is a decently good book to get you started. One of the best things about it is that it’s not very thick and it gets to the point pretty quickly.
Rating: 3 / 5