Home About Courses Schedule Services Webinars Contact Search

IBM MQ Introduction and Application Programming in Java


Duration: 4.0 days

Method: Instructor led, Hands-on workshops

Price: $2295.00

Course Code: MQ1026


The first day of the course is intended for information systems personnel at all levels. The last three days of the course are intended for applications and systems development staff desiring to understand the writing of IBM MQ applications.


Day 1 is designed to provide the skills necessary to determine the feasibility for using Message Queuing in implementation of application systems. A complete look at the features and facilities provided by the various MQ products will be provided. Days 2 thru 4 are designed to provide the skills necessary to understand the Java Application Programming Interface (API) provided by IBM MQ.


Upon successful completion of this course, the student will be able to:

  • Describe the key related features and facilities available within IBM MQ and the MQI.
  • Describe, explain and understand the various queue and message styles used in message queuing.
  • Describe, explain and understand the functions provided for most of the API commands.
  • Understand the characteristics and basic design approaches for coding IBM MQ applications.
  • Gain a basic knowledge of the recovery, and system management facilities provided.


It is highly recommended that students have the following knowledge and skills: Introduction to Client/Server course (or equivalent knowledge), have at least 1 year of programming experience with Java and have at least a general knowledge of operating system environments in use.


  1. Introduction
    • IBM MQ Definition and Concept
    • IBM MQ Components
      • Queue Managers and Clients
      • Queues
      • Channels
      • System Default Queues
      • Process Definitions and Trigger Monitor
    • IBM MQ Parallel Execution
    • Load Balancing
    • IBM MQ Clusters
    • Getting Data Nearer to the Program
    • No Dedicated Connection
    • IBM MQ and the Network
      • Open Network Blueprint
      • Conversation Model
      • Call Model
      • Messaging Model
    • Messaging Models
      • One-To-One Messaging
      • One-To-Many Messaging
      • Many-To-One Messaging
      • Many-To-Many Messaging
  2. Message Queuing Features and Facilities
    • Function Queues
      • Local Queue
      • Remote Queue
      • Simple Queue topology
      • Transmission Queue
      • Alias Queue
      • Model Queue
      • Message Queues
      • Reply-To Queue
      • Initiation Queue
      • Command Queue
      • Event Queue
      • Dead-Letter Queue
    • Message Types
    • Report Message Processing
    • Direct MQI Calls
    • High-Level AMI Calls
    • Recovery Basics
    • Security Basics
  3. Related Topics
    • Message Groups and Segmentation
    • Public and Subscribe
    • IBM MQ Performance Notes
    • Installable Services
    • Message and Channel Exits
    • IBM MQ Integrator
    • IBM MQ Workflow
    • Implementation Approach
  4. Message Queuing Interface: Initial Design Considerations
    • MQI Objects
      • Queues Managers and Queues
      • Local and Remote Queues
      • Defining Queues and Their Attributes
      • Transmission Queue
      • Channels
    • Parallel Execution
    • Content Overview of Java Client
      • Classes and methods
      • Interfaces
      • Variables and constants
    • Program Preparation
      • Java SDK options
      • Compiling and linking programs
    • Review Quiz, plus Workshop #1
  5. Accessing Queue Managers
    • Environment setup
    • Connection to a Queue Manager
      • Connect
      • Queue Manager
      • Connect to Multiple Queue Managers
      • MQQueueManager class
    • Disconnection from a Queue Manager
      • Disconnect from Queue Manager
      • Disconnect() method
    • Review Quiz and Workshop #2
  6. Error Handling and Accessing Queues
    • Try / Catch processing
    • MQException class
    • Working with queues
      • accessQueue() method
      • close() method
    • Dynamic queue usage
      • MQQueue() method
      • Special considerations
    • Review Quiz and Workshop #3
  7. Writing and Reading Messages
    • Message Object
    • MSGID and CORRELID Processing
    • Writing Messages
      • MQPutMessageOptions class
      • MQMessage class
      • Methods to construct a message
      • put() method
    • Reading Messages
      • MQGetMessageOptions class
      • MQMessage class
      • Methods to deconstruct a message
      • get() method
    • Data conversion considerations
    • Data synchronization functions
      • Processing messages with syncpoint
      • backout() method
      • commit() method
    • Review Quiz and Workshop #4
  8. Special Message Retrieval Options
    • Get with WAIT Processing
    • Queue Browse Processing
    • Review Quiz and Workshop #5
  9. ReplyToQ and Report Options
    • Reply-To Queues
    • Report Message Processing
    • Review Quiz and Workshop #6
  10. Special Call Processing
    • Message context processing
    • Special attribute processing
      • Variables and attributes
      • MQManagedObject() class
      • MQProcess() class
      • inquire() method
      • set() method
    • Trigger Queue Processing
      • Process Definitions and Trigger Monitor
      • MQTM and MQTMC2 attributes
      • Initiation Queues
    • Review Quiz and Workshop #7
  11. Special Topics and Options
    • Working with a distribution list
      • MQDistributionList() class
      • MQDistributionListItem() class
      • MQMessageTracker() class
    • Undelivered Messages
      • Dead-Letter Queue
      • MQDLH attributes
    • ´éč Connection Pooling
      • MQPoolServices() Class
      • MQPoolServicesEvent() Class
      • MQPoolToken() Class
      • MQSimpleConnectionManager() Class
      • MQPoolServicesEventListener() Interface
      • ConnectionManager() Interface