+

Search Tips | Advanced Search

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
  • Windows

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.

Platform Switch load file

AIX

Linux

MQ_INSTALLATION_PATH/lib/amqczsc
Windows 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 the 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. To run CICS applications that connect to a different queue manager, we 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, we 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 Enable CICS user exits.

    Platform Source Library
    AIX

    Linux

    amqzscgx.c amqczscg
    Windows systems amqzscgn.c mqcc1415.dll

Parent topic: Configure XA-compliant transaction managers

Last updated: 2020-10-04