This appendix provides a brief overview of some of the leading JMS providers. We will also explore ways of exploiting JNDI to construct portable messaging code for the providers. The JMS providers covered in this appendix are:
JMQ 1.1 (Java Message Queue) from Sun Microsystems
SonicMQ 3.0 from Progress Software
MQSeries JMS from IBM
FioranoMQ 4.6 from Fiorano Software
iBus//MessageServer 4.1 from Softwired
WebLogic 6.0 from BEA Systems
J2EE 1.3beta Reference Server from Sun Microsystems
JMQ, SonicMQ, FioranoMQ, and iBus//MessageServer are specialized messaging products compliant with the JMS v1.0.2 specification. MQSeries JMS is a JMS extension of IBM's enterprise messaging system family MQSeries. WebLogic 6.0 is a J2EE compliant application server with full support for JMS. J2EE 1.3beta reference server is a reference implementation from Sun Microsystems of the various J2EE APIs defined in the J2EE 1.3 specification, which includes JMS 1.02.
This appendix is divided into two sections. In the first section we will be writing a simple portable JMS client that accesses any message broker without code changes (there is one exception to this rule). In the second section, we will be covering the main features of the JMS providers, as well as running the portable client on each one.
Important | We will be looking at a number of JNDI service provider utilities that can be downloaded from http://java.sun.com. A summary of these is available from http://java.sun.com/products/jndi/serviceproviders.html. Note that you will find many of the required library JAR files already within JMS provider installations. |