A method and computer system are provided for managing a host session on a remote computer. A request is sent to establish a host session from a client computer. The request includes a presentation space for displaying screen data. The client computer has access to properties files defining the screens for the host session. After the request is sent from the client computer, a response to the request is received in the presentation space from the remote computer. The response includes host screen data. Next, the response from the remote computer is identified by comparing the host screen data in the presentation space to screen data defined in one or more of the plurality of properties files for the host session. If host screen changes are detected during the host session, an error is generated and data associated with the error is presented to a user in an errors file. The user may then correct the error by modifying or updating the properties files associated with the host screens.
|
12. A method of managing a tn3270 host session on a remote computer in a computer system, the method comprising:
sending a request to establish the host session from a client computer, the request including a presentation space, wherein the client computer has access to a plurality of java properties files defining a plurality of screens for the host session;
receiving in the presentation space a response to the request from the remote computer, the response including host screen data;
determining a response type for the responses by comparing the host screen data to identifying text defined for the response in a response section contained in at least one of the plurality of java properties files;
if the response type for the response is defined as success in the java properties files, then processing the response; and
if the response style for the response is defined as reject in the java properties files, then printing the presentation space to an errors file.
5. A computer readable storage medium having computer-executable components for managing a host session between a client computer and a remote computer in a computer system, comprising:
a plurality of properties files for defining a plurality of screens comprising screen data for the host session, wherein the screen data defined in at east one of the plurality of properties files for the host session comprises a plurality of field definitions for data appearing on a host session screen, the definitions including at least one of a field name and a flag indicating whether a field is read only or read/write; and
a program file for,
sending a request to establish the host session, the request including a presentation space;
receiving in the presentation space a response to the request from the remote computer, the response including host screen data;
identifying a response type for the response, wherein the response type is defined in at least one of the plurality of properties files, wherein the response type is one of success, analyze, and reject; and
performing an action based on the response type comprising;
if the response type is success, then processing the response; and
if the response type is reject, then printing the presentation space to an errors file.
13. A method of managing a host session on a remote computer in a computer system, comprising:
sending a request to establish the host session from a client computer, the request including a presentation space, wherein the client computer has access to a plurality of properties files defining a plurality of screens for the host session,
receiving in the presentation space a response to the request from the remote computer, the response including host screen data;
identifying the response by comparing the host screen data in the presentation space to screen data defined in at least one of the plurality of properties files for the host session, wherein identifying the response by comparing the host screen data in the presentation space to screen data defined in at least one of the plurality of properties files for the host session comprises determining a response type for the response by comparing the host screen data to identifying text defined for the response in a responses section of at least one screen properties file in the at least one of the plurality of properties files, wherein the at least one screen properties file defines the screen data for the host session, wherein the responses section comprises:
a response type for the response; and
identifying text for the response; and
performing an action based on the identified response, wherein performing an action based on the identified response comprises:
if the response type is success, the processing the response; and
If the response type is reject, then printing the presentation space to an errors file.
1. A method of managing a host session on a remote computer in a computer system, the method comprising:
sending a request to establish the host session from a client computer, the request including a presentation space, wherein the client computer has access to a plurality of properties files defining a plurality of screens for the host session, wherein the plurality of properties files include at least one screen properties file for defining the screen data for the host session, the at least one screen properties file comprises a responses section, and the responses section comprises a response type for the response and identifying text for the response;
receiving in the presentation space a response to the request from the remote computer, the response including host screen data;
identifying the response by comparing the host screen data in the presentation space to screen data defined in at least one of the plurality of properties files for the host session, wherein the screen data defined in at least one of the plurality of properties files for the host session comprises a plurality of field definitions for data appearing on a host session screen, the definitions including at least one of a field name and a flag indicating whether a field is read only or read/write and wherein identifying the response by comparing the host screen data in the presentation space to screen data defined in at least one of the plurality of properties files for the host session comprises determining the response type for the response by comparing the host screen data to the identifying text defined for the response in the responses section of the at least one screen properties file; and
performing an action based on the identified response, wherein performing an action based on the identified response comprises:
If the response types is success, then processing the response; and
If the response type is reject, then printing the presentation space to an errors file.
6. The computer-readable storage medium of
7. The computer-readable storage medium of
8. The computer-readable storage medium of
9. The computer-readable storage medium of
10. The computer-readable storage medium of
11. The computer-readable storage medium of
|
The present invention is related to computer host session management. More particularly, the present invention is related to managing a host session on a remote computer in a computer system.
Some computer systems utilize a mainframe or host server computer for supporting a number of simultaneous users in a computer network. Users access data on the host server through connected computer terminals over the network. In order to access the data on the host server computer, the terminal computers are used to connect to and communicate with the host server over the network using a terminal emulation software program such as Telnet. The Telnet program runs on each terminal computer and enables the terminal computer to connect to the host server to establish a host session. Once a host session is established, users may enter commands through the Telnet program which will then be executed as if the user were entering them directly on a screen of the host server. For example, when logging on to the host server to establish a host session the terminal emulation software may be programmed to expect the password field to start at a specific character position on the host logon screen. Thus, once the appropriate password is received by the terminal emulation software, the password is entered as data in the corresponding password field on the host logon screen of the host server.
Periodically, the software running on the host server computer may be updated or modified resulting in changes in formatting of the host screens. These changes may affect the manner in which commands from a connected terminal computer are interpreted such that data specified for a previously defined field on a host screen may no longer be valid for that field. As a result, the host server may no longer recognize the command from the terminal computer and returns an error to the connected terminal computer. For example, the host server will return an error if the password has changed such that a current password entered by the terminal emulation program is no longer valid.
One previous method for maintaining screen changes on host servers requires modifying and recompiling the code in the terminal emulation program. However, modifying and recompiling the terminal emulation program code is often a time-consuming process and requires additional testing, which is often a time-consuming process requiring skilled programming knowledge. Moreover, this method may also require additional testing of the recompiled code to verify that the appropriate modifications have been made. Another previous method for maintaining screen changes requires the use of “screen scraper” programs in which the actual host screens are recorded to capture the changes. However, in most cases such “screen scraper” programs are platform dependent, that is, they require a specific computer operating system in which to operate. Furthermore, the use of “screen scraper” programs requires a user to manually review each captured host screen to locate where the error has occurred making their use inconvenient during automated or mechanized processes.
It is with respect to these considerations and others that the present invention has been made.
In accordance with the present invention, the above and other problems are solved by methods for managing a host session on a host server or remote computer in which the host screens are predefined in properties files accessible by a terminal or client computer in a computer system. When host screen changes are detected during a host session, an error is generated and data associated with the error is presented to a user in an errors file. The user may then correct the error by simply modifying or updating the properties files associated with the host screens.
According to one method, a request is sent to establish a host session from a client computer. The request includes a presentation space for displaying screen data. The client computer has access to properties files defining the screens for the host session. After the request is sent from the client computer, a response to the request is received in the presentation space from the remote computer. The response includes host screen data. Then, the response from the remote computer is identified by comparing the host screen data in the presentation space to screen data defined in one or more of the plurality of properties files for the host session. Finally, an action is performed based on the identified response.
The properties files may include one or more screen properties files for defining the screen data for the host session. Each screen properties file may include a responses section which may include a response type for the response and identifying text for the response. The response type may be success, analyze, or reject. The step of identifying the response by comparing the host screen data in the presentation space to screen data defined in one or more properties files for the host session may include determining the response type for the response by comparing the host screen data to the identifying text defined for the response in the responses section in a screen properties file. The step of performing an action based on the identified response may include processing the response if the response type is success, or printing the presentation space to an errors file if the response type is reject. The properties files may be Java properties files and the host session may be a TN3270 host session.
In accordance with other aspects, the present invention relates to a computer system for managing a host session. The system includes a remote computer and a client computer in communication with the remote computer in the computer system. The client computer includes a memory device for storing a program file and properties files for defining screens comprising screen data for the host session. The client computer also includes a processor, functionally coupled to the memory device, which is responsive to computer-executable instructions contained in the program file stored in the memory device. The processor is operative to send a request to the remote computer to establish the host session, receive in a presentation space a response to the request from the remote computer, identify a response type for the response, and perform an action based on the response type. The response includes host screen data and the response type is defined in one or more of the properties files.
Aspects of the invention may be implemented as a computer process, a computing system, or as an article of manufacture such as a computer program product or computer-readable medium. The computer program product may be a computer storage media readable by a computer system and encoding a computer program of instructions for executing a computer process. The computer program product may also be a propagated signal on a carrier readable by a computing system and encoding a computer program of instructions for executing a computer process.
These and various other features as well as advantages, which characterize the present invention, will be apparent from a reading of the following detailed description and a review of the associated drawings.
Embodiments of the present invention provide methods, a system, and a computer-readable medium for managing a host session on a remote computer in a computer system. In the following detailed description, references are made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments or examples. Referring now to the drawings, in which like numerals represent like elements through the several figures, aspects of the present invention and the exemplary operating environment will be described.
Turning now to
Turning now to
Alternatively, the client computer 2 may include another type of computing device operative to access a network 18, such as a personal digital assistant or other type of computer. The computer architecture shown in
The client computer 2 further includes a mass storage device 14 for storing an operating system 16, the application program 26, a program file 28, a common properties file 30, and screen properties files 32A and 32B, respectively. The application program 26 may be a terminal emulation program for connecting to remote mainframe computers such as the host server computer 2 described above in
In one embodiment the application program 26 is a “tn3270” terminal emulation program for emulating an IBM 3270 computer terminal which is normally used to communicate with IBM host or mainframe computers over a network. Of course, it will be appreciated that the application program 26 may be used to emulate other terminals as well or may alternatively be a “Telnet” program which is a terminal emulation program for TCP/IP networks such as the Internet. Such alternative terminal emulators are known to those skilled in the art.
The mass storage device 14 also includes the program file 28 which receives and sends commands from the application program 26 to the host server 4. In one embodiment, the program file 28 is a Java program file which contains classes and methods that may be accessed and controlled by the application program 26. The classes and methods include connecting to the host server (i.e., establishing a host session), sending commands to the host server, waiting for a response from the host server, analyzing the host server response, returning the host results to the application program 26, and/or disconnecting from the host. As will be understood by those skilled in the art, the program file 28 may utilize a Java classes file (not shown) containing Java API and system objects and a number of methods which enable a Java process to connect and communicate with a mainframe host session and to send an receive data streams through the connections. The program file 28 utilizes the common properties file 30 and the screen properties files 32A and 32B to manage a host session. In one embodiment, the common properties file 28 and the screen properties files 32A and 32B are Java properties files. The program file 28, the common properties file 30, and the screen properties files 32A and 32B will be described in greater detail below with respect to
The mass storage device 14 is connected to the CPU 4 through a mass storage controller (not shown) connected to the bus 13. The mass storage device 14 and its associated computer-readable media, provide non-volatile storage for the client computer 2. Although the description of computer-readable media contained herein refers to a mass storage device, such as a hard disk or CD-ROM drive, it should be appreciated by those skilled in the art that computer-readable media can be any available media that can be accessed by the client computer 2.
By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media. Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EPROM, EEPROM, flash memory or other solid state memory technology, CD-ROM, DVD, or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer.
According to various embodiments of the invention, the client computer 2 may operate in a networked environment using logical connections to remote computers, such as the host server computer 4, through the network 18. The client computer 2 may connect to the network 18 through a network interface unit 20 connected to the bus 13. It should be appreciated that the network interface unit 20 may also be utilized to connect to other types of networks and remote computer systems. The client computer 2 may also include an input/output controller 22 for receiving and processing input from a number of devices, including a keyboard, mouse, or electronic stylus (not shown in
The logical operations 700 of
The request sent by the program file 28 includes a presentation space and a function command. The function command may include a keyboard input such as the <Enter> key, the <Home> key, or other key. The presentation space is a buffer area for storing screen characters or data. The size of the presentation space is defined to accommodate any fields which may be presented on a host screen. For example, if the host screens in a host session are 24 characters by 80 characters (24×80) then each screen may hold a maximum of 1920 characters. Accordingly, the presentation space will be defined to present a maximum of 1920 characters for each screen. An example of a presentation space is shown in
After sending the request to the host server 4, the logical operations 700 continue at operation 706 where the program file 28 receives a host response including an updated presentation space or host screen, in a data stream from the host server 4. Next, at operation 708, the program file 28 identifies the type of host response which was received. The program file 28 identifies the host response by accessing screen data in the properties files 30, 32A, and 32B and comparing the screen data to the updated presentation space or host screen.
As discussed above with respect to
Depending on response type identified for the host response screen at operation 708, the program file 28 may perform a number of actions. At operation 710, if the program file 28 identifies the response type as “success,” the program file 28 will send the host screen to the application program 26 which will process the host screen presentation space data for display on the display screen 23 of the client computer 2 at operation 712. At operation 714, if the program file 28 identifies the response type as “analyze,” the program file 28 will analyze the host screen to determine the appropriate response type at operation 716. At operation 718, if the program file 28 identifies the response type as reject, the program file 28 notifies the application program 26 that an error has occurred and prints the host screen presentation space to an errors file as well as the field definitions defined for the host screen in its screen properties file at operation 720. This information may be then accessed by a user to assist in a determination of the cause of the error, which may be corrected by modifying or appending a properties file.
Referring again to
It will be appreciated by those skilled in the art that the management of host sessions on a remote computer is facilitated by defining host screen data in properties files accessible by a client computer. Thus, when an error is detected during a host session, the error may be corrected by modifying or appending the screen data in the properties files without recompiling code or re-recording changed screens.
Although the invention has been described in language specific to computer structural features, methodological acts and by computer readable media, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific structures, acts or media described. Therefore, the specific structural features, acts and mediums are disclosed as exemplary embodiments implementing the claimed invention.
The various embodiments described above are provided by way of illustration only and should not be construed to limit the invention. Those skilled in the art will readily recognize various modifications and changes that may be made to the present invention without following the example embodiments and applications illustrated and described herein, and without departing from the true spirit and scope of the present invention, which is set forth in the following claims.
Hanners, Joseph M., Laurance, Calvin
Patent | Priority | Assignee | Title |
10001985, | Oct 28 2009 | Advanced BusinessLink Corporation | Role-based modernization of legacy applications |
10055214, | Oct 28 2009 | Advanced BusinessLink Corporation | Tiered configuration of legacy application tasks |
10310835, | Oct 28 2009 | Advanced BusinessLink Corporation | Modernization of legacy applications using dynamic icons |
10678666, | Sep 07 2011 | INNOVATIVE DEFENSE TECHNOLOGIES, LLC | Method and system for implementing automated test and retest procedures in a virtual test environment |
8489677, | Oct 28 2009 | Advanced BusinessLink Corporation | Session pooling for legacy application tasks |
8826084, | Sep 07 2011 | INNOVATIVE DEFENSE TECHNOLOGIES, LLC | Method and system for implementing automated test and retest procedures |
9049152, | Oct 28 2009 | Advanced BusinessLink Corporation | Hotkey access to legacy application tasks |
9055002, | Oct 28 2009 | Advanced BusinessLink Corporation | Modernization of legacy application by reorganization of executable legacy tasks by role |
9106685, | Oct 28 2009 | Advanced BusinessLink Corporation | Dynamic extensions to legacy application tasks |
9106686, | Oct 28 2009 | Advanced BusinessLink Corporation | Tiered Configuration of legacy application tasks |
9135714, | Nov 28 2011 | INNOVATIVE DEFENSE TECHNOLOGIES, LLC | Method and system for integrating a graphical user interface capture for automated test and retest procedures |
9191339, | Oct 28 2009 | Advanced BusinessLink Corporation | Session pooling for legacy application tasks |
9304754, | Oct 28 2009 | Advanced BusinessLink Corporation | Modernization of legacy applications using dynamic icons |
9483252, | Oct 28 2009 | Advanced BusinessLink Corporation | Role-based modernization of legacy applications |
9519473, | Oct 28 2009 | Advanced BusinessLink Corporation | Facilitating access to multiple instances of a legacy application task through summary representations |
9547694, | Mar 15 2013 | RPX Corporation | Aggregated search |
9633089, | Mar 15 2013 | RPX Corporation | Aggregated search |
9841964, | Oct 28 2009 | Advanced BusinessLink Corporation | Hotkey access to legacy application tasks |
9875117, | Oct 28 2009 | Advanced BusinessLink Corporation | Management of multiple instances of legacy application tasks |
9965266, | Oct 28 2009 | Advanced BusinessLink Corporation | Dynamic extensions to legacy application tasks |
Patent | Priority | Assignee | Title |
5734871, | Oct 29 1985 | Mitem Corporation | Method for and apparatus for controlling the execution of host computer application programs through a second computer |
5754830, | Apr 01 1996 | OpenConnect Systems Incorporated | Server and web browser terminal emulator for persistent connection to a legacy host system and method of operation |
5784578, | Jan 17 1996 | International Business Machines Corporation; IBM Corporation | Method and system for enhancing the efficiency of data communication between a terminal device and a host computer having an optimizer |
5958013, | Sep 11 1997 | International Business Machines Corporation | Apparatus, methods and computer program products for conducting a persistent session with a host-based application |
6049832, | Nov 15 1996 | JPMORGAN CHASE BANK, N A , AS SUCCESSOR AGENT | Method for accessing information on a host computer from a client computer through an intelligent virtual host component |
6122661, | Dec 09 1996 | JPMORGAN CHASE BANK, N A , AS SUCCESSOR AGENT | Method of accessing information on a host computer from a client computer |
6182276, | Mar 04 1998 | International Business Machines Corporation; IBM Corporation | Host application presentation space recognition producing asynchronous events |
6233541, | Apr 01 1996 | OpenConnect Systems Incorporated | Server and web browser terminal emulator for persistent connection to a legacy host system and method of operation |
6446110, | Apr 05 1999 | International Business Machines Corporation; IBM Corporation; International Business Machines Corporatoin | Method and apparatus for representing host datastream screen image information using markup languages |
6449649, | Jul 10 1997 | Resqnet.com, Inc. | Terminal emulator with remote downloadable configurability |
6643825, | Jul 14 1999 | International Business Machines Corporation | Methods, systems, and computer program products for applying styles to host screens based on host screen content |
6665868, | Mar 21 2000 | GOOGLE LLC | Optimizing host application presentation space recognition events through matching prioritization |
6697088, | Apr 27 1998 | SOFTWARE AG ISRAEL LTD | Graphical presentation system |
6708189, | Sep 30 1997 | DeskNet, Inc. | Computer file transfer system |
6920629, | Jan 25 2001 | U S BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT | Capturing fields from an output of a software application |
7043534, | Mar 31 2000 | Lenovo PC International | Remote execution of commands in a multi-host network |
20020091818, | |||
20020112002, | |||
20030093534, | |||
20030212751, | |||
20040010574, | |||
20040015842, | |||
20040034719, | |||
20050005015, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jul 01 2003 | AT&T Intellectual Property I, L.P. | (assignment on the face of the patent) | / | |||
Nov 24 2007 | Bellsouth Intellectual Property Corporation | AT&T Delaware Intellectual Property, Inc | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 021745 | /0533 | |
Oct 24 2008 | AT&T Delaware Intellectual Property, Inc | AT&T INTELLECTUAL PROPERTY I,L P | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 022157 | /0602 |
Date | Maintenance Fee Events |
Oct 04 2012 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Nov 28 2016 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Feb 01 2021 | REM: Maintenance Fee Reminder Mailed. |
Jul 19 2021 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Jun 16 2012 | 4 years fee payment window open |
Dec 16 2012 | 6 months grace period start (w surcharge) |
Jun 16 2013 | patent expiry (for year 4) |
Jun 16 2015 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 16 2016 | 8 years fee payment window open |
Dec 16 2016 | 6 months grace period start (w surcharge) |
Jun 16 2017 | patent expiry (for year 8) |
Jun 16 2019 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 16 2020 | 12 years fee payment window open |
Dec 16 2020 | 6 months grace period start (w surcharge) |
Jun 16 2021 | patent expiry (for year 12) |
Jun 16 2023 | 2 years to revive unintentionally abandoned end. (for year 12) |