Browse Prior Art Database

WebSphere* 2.0.3.x to 3.5.0.2 API Migration Tool

IP.com Disclosure Number: IPCOM000013691D
Original Publication Date: 2002-Oct-21
Included in the Prior Art Database: 2003-Jun-18
Document File: 3 page(s) / 51K

Publishing Venue

IBM

Abstract

Two programs are disclosed that migrates JavaServer** Pages (JSPs) and Servlets. The JSP migration tool performs the JSP syntax migration automatically by identifying the JSP .91 tags in the input JSP file, translating each to JSP 1.1 tag, and writing out to a new JSP file. The JSP migration tool can process any JSP files. It has no dependency on the position of the JSP tags. The tool, however, assumes the input JSP file is a working JSP application and it contains valid JSP tags. A high level architecture is shown in the left figure below. The input is the JSP file containing the JSP .91 tags. The outputs consists of a migrated JSP file that contains the translated JSP 1.1 tags and a migration summary report. The migration summary report shows the deprecated JSP statement, line number in the original input file, and the replacement JSP statement.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 3

WebSphere* 2.0.3.x to 3.5.0.2 API Migration Tool

Two programs are disclosed that migrates JavaServer** Pages (JSPs) and Servlets. The JSP migration tool performs the JSP syntax migration automatically by identifying the JSP .91 tags in the input JSP file, translating each to JSP 1.1 tag, and writing out to a new JSP file. The JSP migration tool can process any JSP files. It has no dependency on the position of the JSP tags. The tool, however, assumes the input JSP file is a working JSP application and it contains valid JSP tags. A high level architecture is shown in the left figure below. The input is the JSP file containing the JSP .91 tags. The outputs consists of a migrated JSP file that contains the translated JSP 1.1 tags and a migration summary report. The migration summary report shows the deprecated JSP statement, line number in the original input file, and the replacement JSP statement.

Three design goals are discussed. The most important requirement and design goal was to produce migrated JSP files so that the look and function are preserved from the original JSP file when executed. This requirement can be verified with a side-by-side comparison test run that uses two systems; one system runs the original JSP .91 file and a second system runs the migrated JSP 1.1 file.

To preserve the original JSPs look and function, the difference between the input JSP file and the new output JSP file needs be limited to the JSP tags. All the texts preceding and following the translated JSP tag are left unchanged. This includes the number of characters including blank characters and line spacing. The migration summary report provides the deprecated JSP statements identified in the input JSP file along with its line statement number and its replacement statement.

The second important design goal was to create a framework such that the migration code for a JSP tag is encapsulated and plug-able with minimal change to the existing system. One class per JSP tag paradigm was employed. This strategy allows the tool to be developed incrementally and in a team environment. The tool can be operational without having to complete the migration class code for all JSP tags. As the additional JSP tags' migration classes become ready, it can be plugged-in and tested. The tool can be shipped incrementally for beta testing.

The third design goal was to use the same model for each of the JSP tags' migration class code. This strategy improved developer productivity, reduced coding error, and improved maintainability.

The JSP migration tool translation involves the translation of the tags, the attributes of the tags, and the values of the attributes. All the static translation information is prov...