Configure an extended transactional client for CICS

You configure an extended transactional client for use by CICSĀ® by adding an XAD resource definition to a CICS region.

Add the XAD resource definition by using the CICS resource definition online (RDO) command, cicsadd. The XAD resource definition specifies the following information:

  • An xa_open string
  • The fully qualified path name of a switch load file
One switch load file is supplied for use by CICS on each of the following platforms: AIX , HP-UX, Solaris, and Windows systems. Each switch load file contains a function that returns a pointer to the XA switch structure that is used for dynamic registration, MQRMIXASwitchDynamic. See Table 1 for the fully qualified path name of each switch load file.
Table 1. The switch load files
Platform Switch load file

AIX
HP-UX
Linux
Solaris
MQ_INSTALLATION_PATH/lib/amqczsc
Windows systems MQ_INSTALLATION_PATH\bin\mqcc4swi.dll 1
MQ_INSTALLATION_PATH represents the high-level directory in which IBM MQ is installed. Here is an example of an XAD resource definition for Windows systems:
cicsadd -c xad -r REGION1 WMQXA \
    ResourceDescription="IBM MQ queue manager MARS" \
    XAOpen="channel=MARS.SVR,trptype=tcp,conname=MARS(1415),qmname=MARS,tpm=cics" \
    SwitchLoadFile="C:\Program Files\IBM\MQ\bin\mqcc4swi.dll"
For more information about adding an XAD resource definition to a CICS region, see the CICS Administration Reference and the CICS Administration Guide for your platform. Note the following information about using CICS with an extended transactional client:

  • We can add only one XAD resource definition for IBM MQ to a CICS region. This means that only one queue manager can be associated with a region, and all CICS applications that run in the region can connect only to that queue manager. If you want to run CICS applications that connect to a different queue manager, you must run the applications in a different region.
  • Each application server in a region calls xa_open while it is initializing and starts an MQI channel to the queue manager associated with the region. This means that the queue manager must be started before an application server starts, otherwise the xa_open call fails. All IBM MQ MQI client applications later processed by the application server use the same MQI channel.
  • When an MQI channel starts, and there is no security exit at the client end of the channel, the user ID that flows from the client system to the server connection MCA is cics . Under certain circumstances, the queue manager uses this user ID for authority checks when the server connection MCA subsequently attempts to access the queue manager resources on behalf of a client application . If this user ID is used for authority checks, you must ensure that it has the authority to access all the resources it needs to access.

    For information about when the queue manager uses this user ID for authority checks, see Securing.

  • The CICS task termination exits that are supplied for use on IBM MQ client systems are listed in Table 2 . You configure these exits in the same way that you configure the corresponding exits for IBM MQ server systems. For this information, therefore, see the Enabling CICS user exits.
    Table 2. CICS task termination exits
    Platform Source Library
    AIX
    HP-UX
    Linux
    Solaris
    amqzscgx.c amqczscg
    Windows systems amqzscgn.c mqcc1415.dll