1 Introduction

Oracle Application Server (AS) Adapters for CICS enable you to connect Oracle Application Server to a Customer Information Control System (CICS).

This chapter provides an overview of the features and architecture of OracleAS Adapter for CICS.

This chapter contains the following topics:

OracleAS Adapters for CICS Overview

OracleAS Adapter for CICS include the following adapters:

CICS is a family of application servers that provides industrial-strength, online transaction management and connectivity for mission-critical applications on IBM mainframe systems.

The application components in CICS are executable programs called transactions. These programs are typically written in COBOL but may possibly be written in other languages, such as PL/I, C, and Java. OracleAS Adapter for CICS interaction are mapped to specific programs.

OracleAS Adapter for CICS

OracleAS Adapter for CICS includes the following features:

  • Uses COMMAREA transactions to communicate with clients, using a communication buffer described in the transaction program (such as a COBOL copybook). There is an input structure and an output structure (each with a limit of 32Kb). In many cases, transactions are written so that the input structure prefixes the output structure.

  • Uses EXCI (EXternal Call Interface) to invoke CICS transactions from tasks running within the IBM z/OS system. EXCI is efficient because it uses cross-memory mechanisms.

  • Enables storing valid CICS user names and passwords, which are passed to CICS for authentication as part of the client request.

  • Captures and maintains a metadata schema for CICS by importing COBOL copybooks and transforming them into mapping definitions for Oracle Connect on the IBM z/OS Series platform and by associating the data structures with specific physical files.

  • Uses an enterprise application integration (EAI) model. Users of a requesting application can model the interactions that they want implemented, specifying what each interaction does, when it occurs, and the inputs and outputs expected for each interaction.

  • Maps data structures to facilitate access to CICS programs within Oracle Application Server.

  • Supports two-phase commit and can fully participate in a distributed transaction.

Note:

To use OracleAS Adapter for CICS with 2PC, you must install and configure RRS and also install CICS TS 1.3 or higher.

OracleAS Adapter for CICS Queue

OracleAS adapter for CICS Queue is used for pulling messages from a CICS transient data queue.

To pull message from the queue, the getEvents interaction is executed. This interaction is added to the adapter schema automatically. When executed, all messages in the queue are pulled.

CICS Transient Data Queues (Intrapartition)

Intrapartition refers to data on direct-access storage devices used with one or more programs running as separate tasks. Data directed to or from these internal queues must consist of variable-length records. All intrapartition transient data destinations are held as queues in the same data set, managed by CICS.

An intrapartition destination requires a resource definition containing information that locates the queue in the intrapartition data set. These queues can be associated with either a terminal or an output data set. When data is written to the queue by a user task, the queue can be used subsequently as input data by other tasks within the CICS region.

All access is sequential, goverened by read and write pointers. Once a record has been read, it cannot be read by another task. Intrapartition data may ultimately be transmitted upon request to the terminal or retrieved sequentially from the output data set.

The intrapartition transient data queue is of the Logically Recoverable type. This data queue type is recovered on warm and emergency restarts. If a unit of work (UOW) updates a logically recoverable queue, and subsequently backs out the changes it has made, the changes made to the queue are also backed out. On a warm or emergency restart, the committed state of a logically recoverable intrapartition queue is recovered.

OracleAS Adapters for CICS Architecture

OracleAS Adapter for CICS include the following components:

  • J2CA 1.5 CICS adapter: The J2CA CICS adapter is a standard resource adapter that is compliant with J2EE Connector Architecture, providing J2EE components connectivity.

  • Oracle Connect: Oracle Connect runs on the legacy system and handles requests from the J2CA 1.5 CICS adapter, that runs within Oracle Application Server Containers for J2EE ).

  • Oracle Studio: Oracle Studio is the configuration tool for Oracle Connect. Configuration tasks using Oracle Studio are performed on a Windows or Linux computer. Oracle Studio uses perspectives that enables you to generate specific information necessary to model OracleAS Adapter for CICS.

    Figure 1-1 illustrates the components of OracleAS Adapter for CICS:

Figure 1-1 OracleAS Adapter for CICS Architecture

This image shows the architecture
Description of "Figure 1-1 OracleAS Adapter for CICS Architecture"

Integration Flow from Oracle Application Server to the Legacy Application

The J2CA 1.5 CICS adapter converts the J2CA interaction invocation received from Oracle Application Server to XML format and passes the XML format to Oracle Connect on the legacy server. The daemon listens for the request coming from the J2CA 1.5 CICS adapter client and assigns a server process to handle the request.

The properties of the server process such as connection pooling requirements are defined by a workspace definition within the daemon. The server process includes an instance of the application engine, which converts the XML format into native structures understandable by CICS and passes the converted XML to the back-end adapter. The back-end adapter builds an interaction based on the metadata for the back-end adapter stored in the repository and the incoming converted XML, and passes it to the legacy application. The results of this execution are passed back to the application engine, using the back-end adapter, where these results are converted to XML and passed back to the client.