WebSphere MQ Application Programming Guide
Introduction to message queuing
- What is message queuing?
- What is a message?
- What is a message queue?
- What is a queue manager?
- What is a cluster?
- What is a shared queue, a queue-sharing group, and intra-group queuing?
- What is a WebSphere MQ client?
- Main features of message queuing
- Benefits of message queuing to the application designer and developer
- What can you do with WebSphere MQ products?
Overview of application design
- Planning your design
- Using WebSphere MQ objects
- Designing your messages
- WebSphere MQ techniques
- Application programming
- Testing WebSphere MQ applications
WebSphere MQ messages
- Message descriptor
- Types of message
- Format of message control information and message data
- Message priorities
- Message groups
- Message persistence
- Selecting messages from queues
- Messages that fail to be delivered
- Messages that are backed out
- Reply-to queue and queue manager
- Message context
WebSphere MQ objects
- Queue managers
- Queue-sharing groups
- Queues
- Namelists
- Process definitions
- AUTHINFO objects
- Channels
- Storage classes
- Rules for naming WebSphere MQ objects
Handling program errors
- Locally determined errors
- Using report messages for problem determination
- Remotely determined errors
Introducing the Message Queue Interface
- What is in the MQI?
- Parameters common to all the calls
- Specifying buffers
- Programming language considerations
- z/OS batch considerations
- UNIX signal handling
Connecting to and disconnecting from a queue manager
- Connecting to a queue manager using the MQCONN call
- Connecting to a queue manager using the MQCONNX call
- Disconnecting programs from a queue manager using MQDISC
Opening and closing objects
- Opening objects using the MQOPEN call
- Creating dynamic queues
- Opening remote queues
- Closing objects using the MQCLOSE call
Putting messages on a queue
- Putting messages on a local queue using the MQPUT call
- Putting messages on a remote queue
- Controlling context information
- Putting one message on a queue using the MQPUT1 call
- Some cases where the put calls fail
Getting messages from a queue
- Getting messages from a queue using the MQGET call
- The order in which messages are retrieved from a queue
- Getting a particular message
- Type of index
- Handling messages greater than 4 MB long
- Waiting for messages
- Signaling
- Skipping backout
- Application data conversion
- Browsing messages on a queue
- Browsing messages in logical order
- Some cases where the MQGET call fails
Writing data-conversion exits
- Invoking the data-conversion exit
- Writing a data-conversion exit program
- Writing a data-conversion exit program for WebSphere MQ for iSeries
- Writing a data-conversion exit for WebSphere MQ on UNIX systems and Compaq OpenVMS Alpha
- Writing a data-conversion exit for WebSphere MQ for Windows
Inquiring about and setting object attributes
- Inquiring about the attributes of an object
- Some cases where the MQINQ call fails
- Setting queue attributes
Committing and backing out units of work
- Syncpoint considerations in WebSphere MQ applications
- Syncpoints in WebSphere MQ for z/OS applications
- Syncpoints in CICS for iSeries applications
- Syncpoints in MQSeries for OS/2 Warp, WebSphere MQ for Windows, WebSphere MQ for iSeries, and WebSphere MQ on UNIX systems
- Syncpoints in MQSeries for Compaq NonStop Kernel applications
- General XA support
Starting WebSphere MQ applications using triggers
- What is triggering?
- Prerequisites for triggering
- Conditions for a trigger event
- Controlling trigger events
- Designing an application that uses triggered queues
- Trigger monitors
- Properties of trigger messages
- Differences between WebSphere MQ products
- When triggering does not work
Using and writing API exits
Using and writing applications on WebSphere MQ for z/OS
- Environment-dependent WebSphere MQ for z/OS functions
- Program debugging facilities
- Syncpoint support
- Recovery support
- The WebSphere MQ for z/OS interface with the application environment
- Writing z/OS OpenEdition(R) applications
- The API-crossing exit for z/OS
- WebSphere MQ Workflow
- Application programming with shared queues
Using and writing WebSphere MQ-CICS bridge applications for z/OS
- Using CICS DPL programs with the bridge
- Using CICS transactions with the bridge
- Programming for the distributed environment
- From 3270 legacy to 3270 bridge - an example
- Setting fields in the MQMD and MQCIH structures
- Setting the open options and put message options for the bridge request queue
- Managing MsgId and CorrelId in a unit of work
- Error handling by the CICS bridge
- Debugging CICS bridge applications
- Application data structure terminology
IMS and IMS Bridge applications on WebSphere MQ for z/OS
Object-oriented programming with WebSphere MQ
Building your application on HP-UX
Building your application on Linux
Building your application on Solaris
Sample programs (all platforms except z/OS)
- Features demonstrated in the sample programs
- Preparing and running the sample programs
- The Put sample programs
- The Distribution List sample program
- The Browse sample programs
- The Browser sample program
- The Get sample programs
- The Reference Message sample programs
- The Request sample programs
- The Set sample programs
- Design of the Set sample program
- The Echo sample programs
- The Data-Conversion sample program
- The Triggering sample programs
- Running the samples using remote queues
- Database coordination samples
- The CICS transaction sample
- Encina sample program
- Dead-letter queue handler sample
- The Connect sample program
- The API exit sample program
- Using the SSPI security exit on Windows systems
WebSphere is a trademark of the IBM Corporation in the United States, other countries, or both.
IBM is a trademark of the IBM Corporation in the United States, other countries, or both.