IBM CICS Transaction Gateway (CTG) connector enables remote client applications to invoke services in a CICS region using the JCA (Java EE Connector Architecture) Resource Adapter.

Additional Info

Requires Mule Enterprise License

Yes  

Requires Entitlement

Yes  

Mule Version

3.7.0 or higher

Configs


Configuration

<ibm-ctg:config>

Connection Management

Attributes

Name Java Type Description Default Value Required

name

String

The name of this configuration. With this name can be later referenced.

x 

host

String

The host name of the CTG with which the connector will communicate.

x 

port

String

The port number on which the CTG daemon is listening. The default value for TCP/IP is 2006.

2006

 

serverName

String

The name of the target CICS server to connect to for all interactions through this resource adapter. In remote mode, this name must be defined in the CICS Transaction Gateway configuration file. If this parameter is left blank, the default CICS server is used

 

username

String

The CICS user ID to be used if no other security credentials are available. Optional if no security is enabled in the CICS region.

 

password

String

The password for the CICS user ID. Optional if no security is enabled in the CICS region.

 

keystoreLocation

String

The location of the keystore containing the certificates required for an SSL connection.

 

keystorePassword

String

The password required to access the keystore for an SSL connection.

 

connectionTimeout

int

Sets the socket connection timeout value for a connection to CICS TG. This timeout represents the maximum amount of time (in milliseconds) a managed connection will attempt to open a socket connection successfully to a remote Gateway daemon. The timeout is ignored for attempted connections to a local Gateway instance. A value of 0 represents no timeout.

0

 

responseTimeout

int

Set the response timeout value for a connection to CICS TG. This timeout represents the maximum amount of time (in milliseconds) a managed connection will attempt wait to response for a request. A value of 0 represents no timeout.

30000

 

ctgTrace

boolean

Turns all levels of CTG tracing on or off.

false

 

Processors


Execute

<ibm-ctg:execute>

Calls a remote CICS program sending data encapsulated in channels and containers, allowing users to transfer more than 32 KB in a single request. A container is a named reference to a storage area managed by CICS that can hold any form of application data. A container can hold data in any format that the application requires and is limited only by the amount of storage available. An application can reference any number of containers. A channel is a uniquely named reference to a collection of containers. It is analogous to a COMMAREA, but it is not subject to its constraints. Programs can pass a single channel between them. You can think of a channel as a parameter list. The same channel can be passed from one program to another. Channels and containers are visible only to the program that creates them, and to the programs that they are passed to. When these programs end, CICS automatically deletes the containers and their storage. They are not recoverable. If you require to use recoverable containers, use CICS BTS containers.

Attributes

Name Java Type Description Default Value Required

config-ref

String

Specify which config to use

x 

content

ByteArrayInputStream

The input data to be passed to the CICS program.

#[payload]

 

request

ChannelRequest

A ChannelRequest that contains the details for request to CTG, such as: program name, TPN, encoding, channel name and its containers (request, response and error).

x 

Returns

Return Java Type Description

TransformingValue<ByteArrayInputStream,DataType<ByteArrayInputStream>>

The response obtained from the invocation of the CICS program.


Execute with multiple channels

<ibm-ctg:execute-with-multiple-channels>

Calls a remote CICS program sending data encapsulated in channels and containers, allowing users to transfer more than 32 KB in a single request. A container is a named reference to a storage area managed by CICS that can hold any form of application data. A container can hold data in any format that the application requires and is limited only by the amount of storage available. An application can reference any number of containers. A channel is a uniquely named reference to a collection of containers. It is analogous to a COMMAREA, but it is not subject to its constraints. Programs can pass a single channel between them. You can think of a channel as a parameter list. The same channel can be passed from one program to another. Channels and containers are visible only to the program that creates them, and to the programs that they are passed to. When these programs end, CICS automatically deletes the containers and their storage. They are not recoverable. If you require to use recoverable containers, use CICS BTS containers.

Attributes

Name Java Type Description Default Value Required

config-ref

String

Specify which config to use

x 

channelAndContentList

List

A List of ChannelAndContent containing one or more pairs with channel and the details for request to CTG, such as: program name, TPN, encoding, channel name and its containers (request, response and error); with his respective content.

x 

encoding

String

The encoding of the request.

x 

Returns

Return Java Type Description

TransformingValue<List<ByteArrayInputStream>,DataType<ByteArrayInputStream>>

The responses obtained from the invocation of the CICS program.


Create ChannelAndContent instance

<ibm-ctg:create-channel-and-content-instance>

Create an instance of ChannelAndContent that will be used in the input list of the "Execute with multiple channels" operation

Attributes

Name Java Type Description Default Value Required

config-ref

String

Specify which config to use

x 

content

ByteArrayInputStream

The input data to be passed to the CICS program.

#[payload]

 

request

ChannelRequest

A ChannelRequest that contains the details for request to CTG, such as: program name, TPN, encoding, channel name and its containers (request, response and error).

x 

targetProperty

String

 

Returns

Return Java Type Description

Object

The ChannelAndContent instance.


Execute using COMMAREA

<ibm-ctg:execute-using-commarea>

Calls a remote CICS program sending data encapsulated in a COMMAREA. Requests are limited to a maximum of 32 KB. The COMMAREA is a large and contiguous block of data that contains all the data to be passed to the called program, even if only part of this data is required. It facilitates the transfer of information between two programs within a transaction or between two transactions from the same terminal. Information in a COMMAREA is available only to the two participating programs, unless those programs take explicit steps to make the data available to other programs, which can be invoked later in the transaction. The COMMAREA stores all information sequentially as character data.

Attributes

Name Java Type Description Default Value Required

config-ref

String

Specify which config to use

x 

content

ByteArrayInputStream

The input data to be passed to the CICS program.

#[payload]

 

request

CommareaRequest

A CommareaRequest that contains the details for request to CTG, such as: program name, TPN, encoding and commarea and reply lengths.

x 

Returns

Return Java Type Description

TransformingValue<ByteArrayInputStream,DataType<ByteArrayInputStream>>

The response obtained from the invocation of the CICS program.