Skip to main content

How the WebSphere MQ-IMS bridge deals with messages - Middleware News

How the WebSphere MQ-IMS bridge deals with messages



When you use the WebSphere® MQ-IMS bridge to send messages to an IMS™ application, you need to construct your messages in a special format. You must also put your messages on WebSphere MQ queues that have been defined with a storage class that specifies the XCF group and member name of the target IMS system. These are known as MQ-IMS bridge queues, or simply bridge queues.

A user does not need to sign on to IMS before sending messages to an IMS application. The user ID in the UserIdentifier field of the MQMD structure is used for security checking. The level of checking is determined when WebSphere MQ connects to IMS, and is described in the security section of the WebSphere MQ for z/OS System Setup Guide. This enables a pseudo signon to be implemented.
The WebSphere MQ-IMS bridge accepts the following types of message:

* Messages containing IMS transaction data and an MQIIH structure (described in the Start of changeApplication Programming ReferenceEnd of change):

MQIIH LLZZ[LLZZ][LLZZ]

Note:
1. The square brackets, [ ], represent optional multi-segments.
2. Set the Format field of the MQMD structure to MQFMT_IMS to use the MQIIH structure.
* Messages containing IMS transaction data but no MQIIH structure:

LLZZ \
[LLZZ][LLZZ]

WebSphere MQ validates the message data to ensure that the sum of the LL bytes plus the length of the MQIIH (if it is present) is equal to the message length.
When the WebSphere MQ-IMS bridge gets messages from the bridge queues, it processes them as follows:

* If the message contains an MQIIH structure, the bridge verifies the MQIIH (see the Start of changeApplication Programming ReferenceEnd of change), builds the OTMA headers, and sends the message to IMS. The transaction code is specified in the input message. If this is an LTERM, IMS replies with a DFS1288E message. If the transaction code represents a command, IMS executes the command; otherwise the message is queued in IMS for the transaction.
* If the message contains IMS transaction data, but no MQIIH structure, the IMS bridge makes the following assumptions:
o The transaction code is in bytes 5 through 12 of the user data
o The transaction is in nonconversational mode
o The transaction is in commit mode 0 (commit-then-send)
o The Format in the MQMD is used as the MFSMapName (on input)
o The security mode is MQISS_CHECK

The reply message is also built without an MQIIH structure, taking the Format for the MQMD from the MFSMapName of the IMS output.

The WebSphere MQ-IMS bridge uses one or two Tpipes for each WebSphere MQ queue:

* A synchronized Tpipe is used for all messages using Commit mode 0 (COMMIT_THEN_SEND) (these show with SYN in the status field of the IMS /DIS TMEMBER client TPIPE xxxx command)
* A non-synchronized Tpipe is used for all messages using Commit mode 1 (SEND_THEN_COMMIT)

Comments

adsrerrapop

Popular posts from this blog

Troubleshooting Java/JMS SSL Configurations - Middleware News

 This document is intended to help diagnose WebSphere MQ V7 Java™ or JMS SSL setup errors. It lists most of the common configuration errors that can cause an SSL connection from a Java/JMS client to a queue manager to fail, and gives the course of action to resolve the problem. In each case the error can be diagnosed by a combination of the error seen in the client log - either a console output, trace file or SystemOut.log file - and the queue manager's error logs. The document is quite long, so the easiest way to find the potential error is to search for one of the errors seen in this list, then filter this list using the error from the opposite end of the channel. All cases here assume that 2-way authentication is being attempted (SSLCAUTH set to REQUIRED on the queue manager's SVRCONN channel). This is the default, and the errors are very similar for 1-way authentication (SSLCAUTH set to OPTIONAL). Symptom Instructions on collecting documentation...

IBM Websphere MQ interview Questions Part 5

MQ Series: - It is an IBM web sphere product which is evolved in 1990’s. MQ series does transportation from one point to other. It is an EAI tool (Middle ware) VERSIONS:-5.0, 5.1, 5.3, 6.0, 7.0(new version). The currently using version is 6.2 Note: – MQ series supports more than 35+ operating systems. It is platform Independent. For every OS we have different MQ series software’s. But the functionality of MQ series Default path for installing MQ series is:- C: programfiles\BM\clipse\SDK30 C: programfiles\IBM\WebsphereMQ After installation it will create a group and user. Some middleware technologies are Tibco, SAP XI. MQ series deals with two things, they are OBJECTS, SERVICES. In OBJECTS we have • QUEUES • CHANNELS • PROCESS • AUTHENTICATION • QUERY MANAGER. In SERVICES we have LISTENERS. Objects: – objects are used to handle the transactions with the help of services. QUEUE MANAGER maintains all the objects and services. QUEUE: – it is a database structure ...

Using telnet to test connectivity between IBM Websphere MQ Client and MQ server - Middleware News

You are having trouble connecting a WebSphere MQ client to a MQ server, receiving errors that you can not connect to the MQ queue manager. One of the first things to determine is if the two machines can communicate, and using the telnet tool is one way to accomplish it. Symptom Receiving errors which state that a queue manager is not found or not available. Connection errors. For example: AMQ9213, AMQ9524, AMQ9202 or AMQ9508 or MQRC =2059 0x0000080b MQRC_Q_MGR_NOT_AVAILABLE. Please note, this is by no means an exclusive list of errors related to this type a problem but just a sample of some of the more common error messages and codes that might occur. Cause One possible cause is that the two machines can not communicate. May be the IP address or hostname was not properly specified by the MQ client. The port number might be incorrect. A queue manager is not running at the desired host. The queue manager could be running, but the corresponding listener is not runnin...