Welcome!

PowerBuilder Authors: Dan Joe Barry, Carmen Gonzalez, Ian Thain, Yakov Werde, Paul Slater

Related Topics: PowerBuilder

PowerBuilder: Article

Migration of Existing EAS 5.x Applications to EAS 6

Architectural changes make explicit migration necessary

In this paper we'll be discussing the migration of existing EAServer applications to EAServer 6. Because of architecture changes in EAServer, an explicit migration is needed; whereas with previous versions you could simply upgrade an existing installation or install and sync the entities.

EAServer 6 comes with a migration utility to help in migrating existing EAS 5.x entities (components, connection caches, etc.).

Migration Utility
To start the utility, go to %DJC_HOME%\bin directory and double-click on migrate.bat.

%DJC_HOME% = EAS 6 installation directory

When the migration utility starts (Figure 1), you'll see the message "Ready for Migration" in the message pane. The migration utility will be able to scan your EAServer 5.x repository and locate all entities that can be migrated over to EAServer 6.

We'll be doing the following tasks for migration:

  1. Connecting to the EAServer 5.x and EAServer 6
  2. Scanning the EAServer 5.x repository for the entities to migrate
  3. Selecting the entities to migrate
  4. Kicking off the migration
  5. Checking for errors
Connect to EAServer 5.x and EAServer 6
From the migration utility, click on the File | Connect menu. Provide the EAServer 5.x and EAServer 6 connection information in the window and click connect (see Figure 2).

Note
For EAServer 6, the user name by default is admin@system and the password is the password you supplied during installation.

If you need to reset the password, you can use the set-admin-password.bat batch file provided in the %DJC_HOME%\bin directory.

Once connected you'll see something like the messages below in the message pane:

Connecting to server: RahulLaptop:2000
Connected to server: localhost:9000
Connected to server: RahulLaptop:2000

Scanning the EAServer 5.x Repository
After you've established the connection, click on the File | Scan EAServer 5.x Repository menu to start scanning. If this menu option isn't enabled, that means that you're not connected to the EAServer 5.x server. When the scanning starts, a dialog opens up and shows the progress messages while the scanning is underway (Figure 3).

Once the scanning is complete, you'd see the following messages in the dialog:

Scan completed successfully.
...
Please close the dialog.

At this point you can open the migrate.log file to see if all the entities were scanned and found for migration. If you don't see some entities in the list it's possible these entities aren't supported and that message will show up in the migrate.log. You can find migrate.log in the %DJC_HOME%\logs\ directory.

Select the Entities To Migrate
Or rather we need to unselect the entities not to migrate. By default all the entities are selected. Click on the entity type in the tree view on the left side to see the available entities to migrate (Figure 4).

Select all the entities you want to migrate by selecting one entity type at a time.

Note
You'll find your PB components in the Package(CORBA) entity type. If your components depend on Java JAR, you'll find them under the Java Archive treeview item.

Once you've selected all the entities you want to migrate, you can kick off the migration by clicking on the File | Migrate menu. On the confirmation window, a list of all the selected entities is presented (Figure 5). Check the list and click Confirm to start the migration.

The migration process can take up quite some time depending on the number of entities you've selected. When you kick off the migration, the message dialog opens up to display the migration status (Figure 6).

If there are any errors, open up the migrate.log to see any detailed messages. For packages and Web applications, look for two kinds of messages:

[MigrateTool] Migration Summary - Entity exported

And

[MigrateTool] Migration Summary - Deployed entities

For a successful migration, a package should be successfully exported and deployed both.

Note
If your CORBA component depends on a Java class and you get a class not found exception, it's possible the package was migrated before the Java Archive. Re-migrating the CORBA component/package will solve the issue.

Conclusion
With the migration tool provided with EAServer 6 it will be much easier for developers to migrate existing applications. However, I would encourage developers to take the time to look more deeply into the new EAServer architecture and how PowerBuilder now fits into the architecture.

EAServer 6.0 is backward-compatible and there's no code change required when you migrate, but there are also new ways of doing things. For example, calling a PowerBuilder component from JSP, because PowerBuilder components are now treated as EJBs.

More Stories By Rahul Jain

Rahul Jain has rich experience in developing enterprise Web and client/server applications using PowerBuilder and EAServer. He works as a principal consultant with Keane, Inc., in Washington, DC.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.