Skip Headers
Oracle GlassFish Server Message Queue Developer's Guide for Java Clients
Release 4.5.2

Part Number E24945-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

Preface

This book provides information about concepts and procedures for developing Java messaging applications (Java clients) that work with Message Queue.

This preface consists of the following sections:

Who Should Use This Book

This guide is meant principally for developers of Java applications that use Message Queue.

These applications use the Java Message Service (JMS) Application Programming Interface (API), and possibly the SOAP with Attachments API for Java (SAAJ), to create, send, receive, and read messages. As such, these applications are JMS clients and/or SOAP client applications, respectively. The JMS and SAAJ specifications are open standards.

This book assumes that you are familiar with the JMS APIs and with JMS programming guidelines. Its purpose is to help you optimize your JMS client applications by making best use of the features and flexibility of a Message Queue messaging system.

This book assumes no familiarity, however, with SAAJ. This material is described in Chapter 5, "Working with SOAP Messages" and assumes only basic knowledge of XML.

Before You Read This Book

You must read the Oracle GlassFish Server Message Queue Technical Overview to become familiar with the Message Queue implementation of the Java Message Specification, with the components of the Message Queue service, and with the basic process of developing, deploying, and administering a Message Queue application.

How This Book Is Organized

This guide is designed to be read from beginning to end. The following table briefly describes the contents of each chapter.

Chapter Description

Chapter 1, "Overview"

A high-level overview of the Message Queue Java interface. It includes a tutorial that acquaints you with the Message Queue development environment using a simple example JMS client application.

Chapter 2, "Using the Java API"

Explains how to use the Message Queue Java API in your client application.

Chapter 3, "Message Queue Clients: Design and Features"

Describes architectural and configuration issues that depend upon Message Queue's implementation of the Java Message Specification.

Chapter 4, "Using the Metrics Monitoring API"

Describes message-based monitoring, a customized solution to metrics gathering that allows metrics data to be accessed programmatically and then to be processed in whatever way suits the consuming client.

Chapter 5, "Working with SOAP Messages"

Explains how you send and receive SOAP messages with and without Message Queue support.

Appendix A, "Warning Messages and Client Error Codes"

Provides reference information for warning messages and error codes returned by the Message Queue client runtime when it raises a JMS exception.


Documentation Conventions

This section describes the following conventions used in Message Queue documentation:

Typographic Conventions

The following table describes the typographic conventions that are used in this book.

Typeface Meaning Example

AaBbCc123

The names of commands, files, and directories, and onscreen computer output

Edit your .login file.

Use ls a to list all files.

machine_name% you have mail.

AaBbCc123

What you type, contrasted with onscreen computer output

machine_name% su

Password:

aabbcc123

Placeholder: replace with a real name or value

The command to remove a file is rm filename.

AaBbCc123

Book titles, new terms, and terms to be emphasized

Read Chapter 6 in the User's Guide.

A cache is a copy that is stored locally.

Do not save the file.

Note: Some emphasized items appear bold online.


Symbol Conventions

The following table explains symbols that might be used in this book.

Symbol Description Example Meaning

[ ]

Contains optional arguments and command options.

ls [-l]

The -l option is not required.

{ | }

Contains a set of choices for a required command option.

-d {y|n}

The -d option requires that you use either the y argument or the n argument.

${ }

Indicates a variable reference.

${com.sun.javaRoot}

References the value of the com.sun.javaRoot variable.

-

Joins simultaneous multiple keystrokes.

Control-A

Press the Control key while you press the A key.

+

Joins consecutive multiple keystrokes.

Ctrl+A+N

Press the Control key, release it, and then press the subsequent keys.

>

Indicates menu item selection in a graphical user interface.

File > New > Templates

From the File menu, choose New. From the New submenu, choose Templates.


Shell Prompt Conventions

The following table shows the conventions used in Message Queue documentation for the default UNIX system prompt and superuser prompt for the C shell, Bourne shell, Korn shell, and for the Windows operating system.

Shell Prompt

C shell on UNIX, Linux, or AIX

machine-name%

C shell superuser on UNIX, Linux, or AIX

machine-name#

Bourne shell and Korn shell on UNIX, Linux, or AIX

$

Bourne shell and Korn shell superuser on UNIX, Linux, or AIX

#

Windows command line

C:\>


Directory Variable Conventions

Message Queue documentation makes use of three directory variables; two of which represent environment variables needed by Message Queue. (How you set the environment variables varies from platform to platform.)

The following table describes the directory variables that might be found in this book and how they are used. Some of these variables refer to the directory mqInstallHome, which is the directory where Message Queue is installed to when using the installer or unzipped to when using a zip-based distribution.

Note:

In this book, directory variables are shown without platform-specific environment variable notation or syntax (such as $IMQ_HOME on UNIX). Non-platform-specific path names use UNIX directory separator (/) notation.

Variable Description

IMQ_HOME

The Message Queue home directory:

  • For installations of Message Queue bundled with GlassFish Server, IMQ_HOME is as-install-parent/mq, where as-install-parent is the parent directory of the GlassFish Server base installation directory, glassfish3 by default.

  • For installations of Open Message Queue, IMQ_HOME is mqInstallHome/mq.

IMQ_VARHOME

The directory in which Message Queue temporary or dynamically created configuration and data files are stored; IMQ_VARHOME can be explicitly set as an environment variable to point to any directory or will default as described below:

  • For installations of Message Queue bundled with GlassFish Server, IMQ_VARHOME defaults to as-install-parent/glassfish/domains/domain1/imq.

  • For installations of Open Message Queue, IMQ_HOME defaults to mqInstallHome/var/mq.

IMQ_JAVAHOME

An environment variable that points to the location of the Java runtime environment (JRE) required by Message Queue executable files. By default, Message Queue looks for and uses the latest JDK, but you can optionally set the value of IMQ_JAVAHOME to wherever the preferred JRE resides.


Related Documentation

The information resources listed in this section provide further information about Message Queue in addition to that contained in this manual. The section covers the following resources:

Message Queue Documentation Set

The documents that constitute the Message Queue documentation set are listed in the following table in the order in which you might normally use them. These documents are available through the Oracle GlassFish Server documentation web site at http://www.oracle.com/technetwork/indexes/documentation/index.html.

Document Audience Description

Technical Overview

Developers and administrators

Describes Message Queue concepts, features, and components.

Release Notes

Developers and administrators

Includes descriptions of new features, limitations, and known bugs, as well as technical notes.

Administration Guide

Administrators, also recommended for developers

Provides background and information needed to perform administration tasks using Message Queue administration tools.

Developer's Guide for Java Clients

Developers

Provides a quick-start tutorial and programming information for developers of Java client programs using the Message Queue implementation of the JMS or SOAP/JAXM APIs.

Developer's Guide for C Clients

Developers

Provides programming and reference documentation for developers of C client programs using the Message Queue C implementation of the JMS API (C-API).

Developer's Guide for JMX Clients

Administrators

Provides programming and reference documentation for developers of JMX client programs using the Message Queue JMX API.


Java Message Service (JMS) Specification

The Message Queue message service conforms to the Java Message Service (JMS) application programming interface, described in the Java Message Service Specification. This document can be found at the URL http://www.oracle.com/technetwork/java/jms/index.html.

JavaDoc

JMS and Message Queue API documentation in JavaDoc format is included in Message Queue installations at IMQ_HOME/javadoc/index.html. This documentation can be viewed in any HTML browser. It includes standard JMS API documentation as well as Message Queue-specific APIs.

Example Client Applications

Message Queue provides a number of example client applications to assist developers.

Example Java Client Applications

Example Java client applications are included in Message Queue installations at IMQ_HOME/examples. See the README files located in this directory and its subdirectories for descriptive information about the example applications.

Example C Client Programs

Example C client applications are included in Message Queue installations at IMQ_HOME/examples/C. See the README files located in this directory and its subdirectories for descriptive information about the example applications.

Example JMX Client Programs

Example Java Management Extensions (JMX) client applications are included in Message Queue installations at IMQ_HOME/examples/jmx. See the README files located in this directory and its subdirectories for descriptive information about the example applications.

Online Help

Online help is available for the Message Queue command line utilities; for details, see "Command Line Reference" in Oracle GlassFish Server Message Queue Administration Guide. The Message Queue graphical user interface (GUI) administration tool, the Administration Console, also includes a context-sensitive help facility; for details, see "Administration Console Online Help" in Oracle GlassFish Server Message Queue Administration Guide.

Documentation, Support, and Training

The Oracle web site provides information about the following additional resources:

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.