IP Library › Granted Patent US 9,619,447
Granted Patent B2
US 9,619,447 · App. 14/332,418 · Granted Apr 11, 2017

Converting terminal-based legacy applications to web-based applications

Inventors: John Kurian (Bangalore, IN); Jithesh Moothoor (Bangalore, IN); Amith Nagabhushan (Bangalore, IN); Hariharan N. Venkitachalam (Karnataka, IN)
Assignee: International Business Machines Corporation
G06F17/2247G06F17/211G06F17/30914H04L67/02
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,619,447
App. No.
14/332,418
Granted
Apr 11, 2017
Kind
B2
Abstract

Map files associated with a terminal-based legacy application, such as a Customer Information Control System (CICS) application, are converted to views and models of a web-based application, such as an application implemented with a Java Platform Enterprise Edition (JEE) compliant server. A hybrid application server executes the legacy application in a first runtime, such as a CICS runtime, in response to a user request received through the web-based application executing in a second runtime, such as a JEE runtime. When a terminal command is identified in the executing legacy application, data associated with the terminal command is packetized and forwarded to the web-based application through an established socket without creating a data stream. The web-based application invokes the models associated with the terminal command and presents a web page responsive to the terminal command to the user.

Claims (44)

1. A computer program product for interfacing with a legacy application through a web-based application interface, the legacy application designed for a terminal-based application interface, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to perform a method comprising:

receiving, from a user through the web-based application interface, a request to execute the legacy application,

wherein the legacy application is a software application designed to interface with a block-oriented computer terminal using terminal commands and associated map files to generate data streams, the map files associating each of the terminal commands with a terminal format and a set of one or more terminal input and output operations, and the data streams being blocks of data having terminal input and output operations and text for generating entire terminal displays in a single operation;

executing, in response to receiving the request, the legacy application in a software abstraction layer of a computing system, wherein the software abstraction layer provides an interface for identifying terminal commands in the executing legacy application;

identifying, during execution of the legacy application, a terminal command issued by the executing legacy application;

identifying, without creating a data stream associated with the terminal command, a first web page of the web-based application interface, the first web page responsive to the terminal command, the first web page being a result of converting at least one map file of the legacy application; and

presenting the first web page to the user.

2. The computer program product of claim 1 , wherein the method further comprises:

converting the at least one map file of the legacy application to a plurality of web pages of the web-based application interface.

3. The computer program product of claim 2 , wherein the converting comprises:

receiving the at least one map file of the legacy application;

parsing data from the at least one map file, the parsing identifying functionality represented by the at least one map file; and

generating web-based code for physical maps and logical maps, the physical maps and logical maps preserving the functionality.

4. The computer program product of claim 1 , wherein the legacy application is a Customer Information Control System (CICS) application, and wherein the at least one map file of the legacy application is a CICS Basic Mapping Support (CICS BMS) map.

5. The computer program product of claim 1 , wherein the web-based application interface is implemented with a Java Platform Enterprise Edition (JEE) compliant server.

6. The computer program product of claim 1 , wherein the legacy application executes in a first runtime and wherein the web-based application interface executes in a second runtime, wherein the method further comprises:

establishing a socket between the first runtime and the second runtime;

creating, within the first runtime, a data packet containing data associated with the terminal command; and

forwarding the data packet to the second runtime through the established socket.

7. The computer program product of claim 6 , wherein the executing legacy application expects a response to the terminal command, wherein the method further comprises:

retrieving data from the first web page;

creating, within the second runtime, the response, the response including the data; and

forwarding the response to the first runtime through the established socket.

8. A computer system for interfacing with a legacy application through a web-based application interface, the legacy application designed for a terminal-based application interface, the computer system comprising:

a memory; and

a processor in communication with the memory, wherein the computer system is configured to perform a method, the method comprising:

receiving, from a user through the web-based application interface, a request to execute the legacy application,

wherein the legacy application is a software application designed to interface with a block-oriented computer terminal using terminal commands and associated map files to generate data streams, the map files associating each of the terminal commands with a terminal format and a set of one or more terminal input and output operations, and data streams are blocks of data having terminal input and output operations and text for generating entire terminal displays in a single operation;

executing, in response to receiving the request, the legacy application in a software abstraction layer of a computing system, wherein the software abstraction layer provides an interface for identifying terminal commands in the executing legacy application;

identifying, during execution of the legacy application, a terminal command issued by the executing legacy application;

identifying, without creating a data stream associated with the terminal command, a first web page of the web-based application interface, the first web page responsive to the terminal command, the first web page being a result of converting at least one map file of the legacy application; and

presenting the first web page to the user.

9. The computer system of claim 8 , wherein the method further comprises:

converting the at least one map file of the legacy application to a plurality of web pages of the web-based application interface.

10. The computer system of claim 9 , wherein the converting comprises:

receiving the at least one map file of the legacy application;

parsing data from the at least one map file, the parsing identifying functionality represented by the at least one map file; and

generating web-based code for physical maps and logical maps, the physical maps and logical maps preserving the functionality.

11. The computer system of claim 8 , wherein the legacy application is a Customer Information Control System (CICS) application, and wherein the at least one map file of the legacy application is a CICS Basic Mapping Support (CICS BMS) map.

12. The computer system of claim 8 , wherein the web-based application interface is implemented with a Java Platform Enterprise Edition (JEE) compliant server.

13. The computer system of claim 8 , wherein the legacy application executes in a first runtime and wherein the web-based application interface executes in a second runtime, wherein the method further comprises:

establishing a socket between the first runtime and the second runtime;

creating, within the first runtime, a data packet containing data associated with the terminal command; and

forwarding the data packet to the second runtime through the established socket.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2014
From: KURIAN, JOHN; MOOTHOOR, JITHESH; NAGABHUSHAN, AMITH; VENKITACHALAM, HARIHARAN N.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 033319/0162 →
Continuity (1)
Related Publication 20160019191A1 · Jan 21, 2016