Adapt map-based traditional applications to use web browsers

Using Rational HATS to modernize the enterprise 3270 BMS map-based CICS applications deployed in TXSeries for Multiplatforms

This article discuss modernizing the IBM® 3270 terminal's basic mapping support (BMS) map-based IBM® CICS® application running on IBM® TXSeries® for Multiplatforms by using IBM® Rational® Host Access Transformation Services (HATS). By using HATS, you can extend your 3270 terminal's map-based CICS applications to the web, to a rich client, or to browsers on mobile devices quickly, easily, with low risk and without any access or modification to application source code. This article concentrates on configuring the TXSeries region for connecting from HATS.


Nageswararao V. Gokavarapu (, System Software Engineer, IBM  

author photoNageswararao V. Gokavarapu has been with the IBM TXSeries test team for the last four years. He holds an M.E. degree in electronic instrumentation from Andhra University, India. His areas of interests are virtualization, transaction processing management, and UNIX systems.

27 July 2010

Also available in Chinese Portuguese


Most of IBM® CICS® enterprise applications that are currently running in IBM® TXSeries® for Multiplatforms are accessed by using IBM® 3270 consoles. Modernizing these proven and reliable applications should not lead to change in the applications. IBM® Rational® Host Access Transformation Services (HATS) enables organizations to quickly modernize existing 3270 green screen applications without changing the application source code so that users can access them through their web browsers.

Introduction to the TXSeries for Multiplatforms

IBM TXSeries for Multiplatforms is a distributed CICS transaction processor for mixed-language applications. It is widely used for integrating data and applications between distributed solutions and enterprise systems, and deployment of CICS applications written in COBOL, C / C++, and PL/I programming languages. The TXSeries also provides extremely good connectivity with CICS Transaction Server (CICS TS) on IBM® z/OS® systems. This acts as a gateway to CICS TS to increase the performance and protect it from client-originated disruption. Uniquely, TXSeries allows you to scale up to CICS TS on the mainframe as the needs of your business grow.

TXSeries for Multiplatforms controls the processing of transactions in a business system, even when the transactions are working concurrently on different computers and accessing the same data. User application programs do not have to perform the specialized task scheduling and control and the data routing and locking that are required by transaction processing. Transaction processing services enable application programs to concentrate on business logic and not on how the logic is implemented. These services are implemented by TXSeries CICS regions to provide each user with a single-user view of the transaction processing system, while maintaining the data integrity and optimum performance for many concurrent users.

Why modernization is required

CICS is a proven platform for deploying the enterprise applications from the last couple of decades. These applications will produce a lot of data, and if this data could be available in a format that allows it to be easily combined with other data, either within the enterprise or available on the Internet, business users could have the ability to use this data to help solve business issues by using a feature-rich, modern browser interface. It also extends the life of traditional applications by reusing the existing data in a modernized way.

How to deploy a 3270 map-based application on TXSeries for Multiplatforms

This section explains how to create and configure the TXSeries region for running 3270 basic mapping support (BMS) map-based CICS applications in an IBM® AIX® system. It also explains how to deploy and use the application in TXSeries regions. Figure 1 shows a typical application, where the client software connects to the application deployed in a TXSeries region through traditional 3270 clients and CICS transactional gateway. It also shows the connection mechanism after converting the BMS maps with Rational HATS.

Figure 1. Typical TXSeries application deployment
Flow diagram of 3270-based application deployment

The following section explains how to create and configure a TXSeries region to deploy the application by using BMS maps.

Creating and configuring the TXSeries region

A TXSeries for Multiplatforms region is a named collection of resources that are controlled by TXSeries as a unit. A TXSeries resource is any facility or component of a TXSeries CICS system that is required to perform a task. The resources in a region include programs, basic mapping support (BMS) map sets, transactions, terminals, files, transient data queues, temporary storage queues, and journals. Each TXSeries region is defined (by permanent resources) by a list of resources with which it can be started. When the CICS region starts, resources are loaded into the CICS region as runtime resources. TXSeries uses Structured File Server (SFS) as a file manager by default.

Configuring and starting a new TXSeries region

Perform the following steps on the machine on which you intend to run a region that uses a local SFS server as file manager:

  1. Ensure that you are logged in as root.
  2. Ensure that the SFS is running.
  3. Configure the region. Enter the cicscp create region command:
#cics_install_dir/bin/cicscp -v create region region_name

Where region_name is the name of the region that you want to create. Figure 2 shows the example for creating the region.

Example: cicscp -v create region hatsdemo

The name of the region must not exceed eight characters in length. Do not use underscores ( _ ), spaces, or the word "stanza" in the region name.

Figure 2. Sample TXSeries region creation using the cicscp administrative tool
screen output
  1. Start the region. Enter the cicscp start region command:
# cics_install_dir/bin/cicscp -v start region region_name

Example: cicscp -v start region hatsdemo StartType=cold

If the region was created and started successfully, a directory for it exists in the var/cics_regions directory. This directory has the name that you specified for the region.

Configuring a TXSeries region with a BMS map-based sample application

To configure the TXSeries region with BMS map-based application developed in C programming language, perform the following steps on the server that contains the region:

  1. Log into the machine as root.
  2. Ensure that your PATH environment variable includes the /bin, /usr/bin, cics_install_dir/bin directories and the directory that contains the executable files for the C compiler.
  3. Stop the region that you want to configure if it is already running. Enter this command:
# cics_install_dir/bin/cicscp -v stop region region_name

Example: cicscp -v stop region hatsdemo

  1. Ensure that the SFS server that manages the region files is running. Enter this command:
# cics_install_dir/bin/sfsadmin list lvols -server \ 

Where sfs_server_name is the name of the SFS server. The command output displays the name of the data volume that was created for the SFS server, if it is running correctly.

Figure 3 shows the output for the sfsadmin command.

Example:sfsadmin list lvols -server /.:/cics/sfs/ajnabi1

Figure 3. List data volumes of the SFS server by using the sfsadmin command
Screen output
  1. Enter the following command for configuring the sample application:
#  cics_install_dir/bin/cicsivp -r region_name  \
-s /.:/cics/sfs/sfs_server_name -v data_volume

Where region_name is the name of the region that is to be configured, sfs_server_name is the name of the SFS server, and data_volume is the name of the data volume of the SFS server. Figure 4 shows the list of resource definitions to be added to configure the sample application.

Example:cicsivp -r hatsdemo -s /.:/cics/sfs/ajnabi1 -v sfs_Sajnabi1

Figure 4. Adding resource definitions for configuring the application
Screen output
  1. When the configuration is finished, cold-start the region that you configured by using the cicscp command (also see Figure 5):
# cics_install_dir/bin/cicscp -v start region region_name StartType=cold

Example:cicscp -v start region hatsdemo StartType=cold

Figure 5. Cold start the region by using the cicscp command
Screen output

Creating a Telnet server for TXSeries regions

The TXSeries Telnet server process (cicsteld) allows client software that can interpret an IBM 3270 Information Display System to connect to a TXSeries region. The Telnet terminal resides on the client's system, receives input, and communicates with the Telnet server process, cicsteld, on the destination machine. The cicsteldserver process then communicates with the TXSeries region.

  1. Use the cicscp create telnet_server command to create the cicsteld process:
#cics_install_dir/bin/cicscp create telnet_server serverName -P 
portNumber -t transid -r region_name

Where serverName is the name for the Telnet server, portNumber is the numeric port number on which the cicsteldprocess listens for incoming Telnet client requests, region_name is the region to connect with, and transid is the initial transaction to be invoked.

Example: cicscp -v create telnet_server HATS -P 9009 -r hatsdemo -t MENU

You must specify transidwhile creating the Telnet server for connecting to the application deployed in the TXSeries region from Rational HATS, because HATS relies on the initial data from the server for further processing.

Now the region is ready with BMS application configured to use it. The next section explains how to connect to this BMS application that is running on a TXSeries region from HATS running on Microsoft® Windows®.

Connecting to a BMS application running on a TXSeries region from HATS

  1. From the Windows server, select Start > Programs > IBM Software Delivery Platform > IBM Rational HATS 7.5 > HATS Toolkit 7.5 to launch the HATS home screen. To create the new project, follow these steps, (also shown in Figure 6):
    1. Select File > New > HATS Project.
    2. Specify the name, choose the target server from available options from drop-down menu, and specify the enterprise application project name.
    3. Click Next.
Figure 6. Creating a project in the HATS toolkit
Creating a Project” window
  1. Configure the connection settings by specifying the Host name (where the TXSeries region is created and the application is deployed), Type, Port, Code page, and Screen size details for where the BMS application is running, as shown in Figure 7.

Make sure that the Port mentioned in Connection Settings in HATS is the same as the port that you used while creating the Telnet server on the TXSeries region side.

Figure 7. Configuring the connection settings
Connection Settings window
  1. Choose a theme from the different themes available on the Project Theme screen, as shown in Figure 8, and then click Finish. Make sure that the Keyboard support option is selected while you are creating the theme. For more information about these settings, check the Rational HATS information center.
Figure 8. Choosing the theme for the HATS project
Project Theme screen
  1. Go to HATS Projects tab in left navigation panel, expand the hatsdemo project, expand Connections, and right-click the main (default) option.
  2. Choose the following options from the menu that is generated:
    1. Select Open HATS Host Terminal > main to connect to the BMS application deployed in the TXSeries region, as shown in Figure 9.
    2. Before connecting to the application, make sure that the application is deployed in the region created in TXSeries server and also the Telnet server.
Figure 9. Connecting to the application by using Host Terminal option
Shows selection on drop-down menu

.When the application is connected from HATS and the initial BMS screen from application is displayed on the Host Terminal screen, Rational HATS automatically converts the fields available on the BMS map to its equivalent form fields for the web page, based on the default options selected.

  1. Click the Host Screen Preview (Figure 10) to check the default web page that is created by using HATS.
Figure 10. Initial screen from the application
3270 application main-Host Terminal screen
  1. Right-click the main(default) option, and select the Run on Server option to run the application on the IBM® WebSphere® Application Server, with default screen customization provided by Rational HATS.
  2. From the Run On Server screen, the Choose an existing server option is selected by default. It will also list the available servers configured on the machine. Choose a server from available servers, and then click Finish.

After the application is deployed and published, you can run the application by using a web browser similarly to a 3270 client.

  1. Type ADDS in the Enter Transaction field (Figure 11), and type 111111 (six ones) in the Number field.
  2. Then press Enter to display next page as in 3270 sample application. Type these values into the following fields (press the Tab key to advance from one field to the next):

    Name: JOE [not case-sensitive]

    Address: 123 MAIN

    Phone: 5555555

    Date: 121501

    Amount: $1000.00

    Comment: COMMENT

  3. Use the Enter key to proceed to the next screen.
  4. To view the newly added record:

    a. In the Enter Transaction field, type BRWS.

    b. In the Number field, type 111111 (six ones).

    c. Press Return.

Figure 11. Customized screen with HATS
Shows the screen for the My Company example

HATS screen customization for simple 3270 BMS application running on TXSeries

  1. From the Host Terminal view (as discussed as in Step 4) click the Create HATS Screen Customization option (see Figure 12) so that you can customize the screen.
Figure 12. Create HATS Screen Customization option
main - Host Terminal screen
  1. In Screen Customization view, specify the name for the screen event that defines a list of actions to perform on the recognition criteria selected for the screen, and then click Next.
  2. From the Screen Recognition Criteria screen, click Next, and then on the Actions screen, choose the Prepopulated using Fields pattern.
  3. Click Finish, and you will see the generated JSP file, or Java™Server Page, InstructionsCVersion.jsp.
  4. From the InstructionsCVersion.jsp page, under the Design tab, add the Submit button to the screen by right-clicking where you want to place it on the screen and then selecting Insert> Form and Input Fields > Submit Button.

This is a simple example for converting the Enter option from the keyboard for BMS applications to a Submit button for a web page. For a detailed explanation about the screen customization, see the Rational HATS information center or go through the HATS overview demos.

  1. In the Insert Submit Button screen, enter a Name and Label for the Submit button, and then click OK.
  2. The Submit button is now added on the Design screen in the JavaServer page. Save the InstructionsCVersion.jsp page to save this customization.
  3. Go back to the Host Terminal window and enter ADDS in the Enter Transaction field and 111333 as an example in the Number filed. Then press the Enter key to go the next screen. You can also customize the next screen by clicking the Create HATS Screen Customization option. The input field for the Enter Transaction field can be changed to a drop-down menu.
  4. Different web design templates are supplied with Rational HATS. Choose a template from the Templates option from the left panel as hatsdemo (Project Name) >Web Content> Templates > Select a template (example: Swirl). Right-click the selected template, and make it the default template by selecting the Set as Default Template option.
  5. When you have finished all customization, follow the previous steps to access the customized application deployed in WebSphere Application server from a browser.

For instructions on customizing the 3270 BMS screens, see the Rational HATS documentation.


Modernizing 3270-based BMS applications running on a TXSeries region using Rational HATS gives you the following advantages:

  • Improves the workflow and navigation of your host 3270 and 5250 applications without any access or modification to the application source code.
  • Provides the ability to extend host applications to the web, rich client, portal, web services, and to browsers on mobile devices quickly and at low risk.
  • Creates service-oriented architecture (SOA) assets from logic contained in your terminal applications.
  • Supports mobile devices, such as cellular phones, data collection terminals, and personal digital assistants (PDAs).



Get products and technologies



developerWorks: Sign in

Required fields are indicated with an asterisk (*).

Need an IBM ID?
Forgot your IBM ID?

Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.


All information submitted is secure.

Dig deeper into Rational software on developerWorks

Zone=Rational, Mobile development
ArticleTitle=Adapt map-based traditional applications to use web browsers