Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Upgrade and Migration Guide

Chapter 7 Migrating a Sample Application - an Overview

This chapter describes the process for migrating the main components of a typical J2EE application from Sun ONE Application Server 6.x to Sun Java System Application Server 8.1. This chapter highlights some of the problems posed during the migration of each type of component and suggests practical solutions to overcome such problems.

For this migration process, the J2EE application presented is called iBank and is based on the actual migration of the iBank application from Sun ONE Application Server 6.x to Application Server 8.1. iBank simulates an online banking service and covers all of the aspects traditionally associated with a J2EE application.

The major points of the J2EE specification covered by the iBank application are:

The iBank application is presented in detail in

Preparing for Migrating the iBank Application

Before starting the migration process, it in important to understand the differences in the deployment descriptors. For detailed information, see Migrating Deployment Descriptors.

Choosing the Target

To start, choose Sun Java System Application Server 8.1 as the target migration server. Install the server in the migration environment. For step-by-step instructions on how to install the software, see the Sun Java System Application Server 8.1 Installation Guide.

If you are using Migration Tool for Sun Java System Application Server 8.1.1 to migrate the components, install the tool. The Migration Tool can be downloaded from the following location:

http://java.sun.com/j2ee/tools/migration

For information on how to use the Migration Tool for Sun Java System Application Server 8.1.1, see the Migration Tool online help. The iBank application is bundled with the tool.

Identifying the Components of the iBank Application

The iBank application has the following directory structure:

iBank/docroot/session/entity/misc

Manual Steps in the iBank Application Migration

Most of the migration is done by the Migration Tool. There are some aspects of migration that must be done manually. These steps are documented in the Migration Tool’s user’s guide and the documentation for the iBank sample application.

Configuring Database Connectivity

In order to deploy an application to the target server, you must add a connection pool, add a JDBC resource and a persistence manager.

This section discusses the following topics:


Note –

Before you begin these steps, make sure that the domain to which the application will be deployed is in the running state. These instructions assume that the application will be deployed to the default domain, domain1.

Use the asadmin utility in the Application Server bin directory to perform these tasks.


Adding a Connection Pool

A JDBC connection pool is a group of reusable connections for a particular database. Because creating each new physical connection is time consuming, the server maintains a pool of available connections to increase performance. When an application requests a connection, it obtains one from the pool. When an application closes a connection, the connection is returned to the pool.

Use the asadmin create-jdbc-connection-pool command to add a connection pool to the server. The syntax of the command is given below.

asadmin create-jdbc-connection-pool
     --user  admin_user
     --password admin_password
     --host localhost
     --port portno
     --datasourceclassname dsclassname
     --property User=ibank_user:Password=ibank_user:URL_PROP=db_url TMB

where, dsclassname is:

URL_PROP is:

db_url is:

Adding a JDBC Resource

A JDBC resource (data source) provides applications with a means of connecting to a database. Before creating a JDBC resource, you must first create a JDBC connection pool.

Use the asadmin create-jdbc-resource command to add resource.

asadmin create-jdbc-resource --user admin_user --password admin_password --host localhost --port portno --connectionpoolid TMB jdbc/IBank

Adding a Persistence Manager

A persistence manager is required for backward compatibility. To run on version 7 of the Application Server, a persistent manager resource was required for applications with container-managed persistent beans (a type of EJB component).

Use the asadmin create-persistence-resource command.

asadmin create-persistence-resource --user admin_user --password admin_password --host localhost --port portno --connectionpoolid TMB --factoryclass com.sun.jdo.spi.persistence.support.sqlstore.impl.PersistenceManagerFactoryImpljdo/pmf

Assembling Application for Deployment

Application Server primarily supports the J2EE model wherein applications are packaged in the form of an enterprise archive (EAR) file (extension .ear). The application is further subdivided into a collection of J2EE modules, packaged into Java archives (JAR, extension .jar) for EJBs and web archives (WAR, extension .war) for servlets and JSPs.

All the JSPs and Servlets must be packaged into WAR file, all EJBs into the JAR file and finally the WAR and the JAR file together with the deployment descriptors in to the EAR file. This EAR file is a deployable component.

Using the asadmin Utility to Deploy the iBank Application on Application Server

The last step is to deploy the application on Sun Java System Application Server 8.1. The process for deploying an application is described below:

The Sun Java System Application Server 8.1 asadmin command includes a help section on deployment that is accessible from the Help menu.

The command line utility asadmin can be invoked by executing asadmin.bat file in Windows and asadmin file in Solaris Operating Environment that is stored in Application Server’s installation’s bin directory.

At asadmin prompt, the command for deployment looks like this:

asadmin> deploy -u username -w password -H hostname -p adminport absolute_path_to_application

After restarting the Application Server, open a browser and go to the following URL to test the application:

http://<machine_name>:<port_number>/ibank

When prompted, enter one of the available user names and passwords. The main menu page of the iBank application displays.