Previous Next vertical dots separating previous/next from contents/index/pdf

Overview: Upgrading from WebLogic Workshop 8.1

Workshop for WebLogic provides tools to help ease the process of upgrading applications built with version 8.1. These tools are designed to read your version 8.1 code and generate a new corresponding version 9.2 workspace. The newly generated code is a migrated, upgraded version of the 8.1 code in which all of the clearly predictable changes have been made (note that your application logic is not altered by upgrade tools). The new code supports a new annotation model, a different project model, and other component-oriented changes.

Note: The Workshop for WebLogic upgrade documentation assumes that your application was developed using WebLogic Workshop version 8.1. If it wasn't, you must migrate your code so that it builds and runs in the WebLogic Workshop IDE version 8.1 SP4, SP5, or SP6 before using the tools described here to upgrade to Workshop for WebLogic version 9.2.

This topic provides an overview of the changes from version 8.1 to version 9.2, as well as suggested high-level steps for approaching upgrade.

Differences Between the Version 8.1 and 9.2 IDEs, and the Applications Built with Them

Upgrade Process: High Level Steps

Preparing a Version 8.1 Application for Upgrade

Actions Performed By Upgrade Tools

Viewing the Upgrade Log

Notes About General Issues

Differences Between the Version 8.1 and 9.2 IDEs and the Applications Built with Them

If you've been developing on WebLogic Workshop version 8.1, the most significant differences you'll notice in version 9.2 (and applications built with it) are likely to be:

You might also be interested in the reading Key Differences for WebLogic Workshop 8.1 Users.

Key IDE Differences

Unlike version 8.1, in version 9.2 the IDE is built on the Eclipse Platform. This is a change that offers many benefits, including: the transparency of an open-source architecture; commonly used features that are familiar because they're available with other widely used Eclipse-based IDEs; and a widely used extensibility model via the Eclipse plug-in framework. To this open framework, Workshop for WebLogic adds many features to support iterative development of the kinds of components you built with version 8.1.

Needless to say, moving from the version 8.1 IDE to the Eclipse-based version 9.2 means that there are significant user interface changes. The following list describes how familiar version 8.1 features are (or are not) rendered in version 9.2.

Project Model Differences

Many of the changes from the version 8.1 to the version 9.2 project model are intended to align the model with broadly used Eclipse and Java conventions. If you've used other Eclipse-based IDEs, version 9.2 of Workshop for WebLogic should feel familiar. For a list of significant changes, see Changes During Upgrade from WebLogic Workshop 8.1 to Version 9.2.

Annotation Differences

Workshop for WebLogic version 9.2 supports the Java 5 annotation model. Whereas in version 8.1 the annotations in your source code were embedded in Javadoc-style comments, their version 9.2 counterparts are outside the comment block. In the abstract, however, there are more similarities than differences between the annotation model in versions 8.1 and 9.2. In other words, for most version 8.1 annotations there are version 9.2 counterparts that use the new syntax. Note that as with version 8.1, the version 9.2 IDE provides an editor (the Annotations view) through which you can view and edit annotation attribute values. For more information on the changes, see Upgrading Annotations.

Component-Specific Changes

These are changes that are specific to component types, such as web services, EJBs, controls, and so on. They primarily affect source code. You can read Changes During Upgrade from WebLogic Workshop 8.1 to Version 9.2 for a summary list, or see the individual technology-oriented topics listed at the bottom of this topic under Related Topics.

Upgrade Process: High Level Steps

These steps assume that your application was developed with WebLogic Workshop. If you wrote your code without using that IDE and you want to upgrade it using Workshop for WebLogic upgrade tools, you must first migrate your code so that it builds and runs in the WebLogic Workshop IDE.

  1. Ensure that your WebLogic Workshop version 8.1 applications have been upgraded to SP4, SP5, or SP6. The upgrade tools included in this release are designed to upgrade from those versions only.
  2. Undeploy WebLogic Workshop version 8.1 applications from your version 8.1 domain before you upgrade the server.

    Upgrading domains and upgrading WebLogic Workshop applications are separate processes, but they're interrelated. For information about upgrading version 8.1 WebLogic Workshop domains, see WebLogic Workshop Version 8.1 Domains Can Be Upgraded from Within Version 9.2.

  3. Use the topics in this documentation to determine whether it would be useful for you to do preparatory work on your version 8.1 application before using the upgrade tools to upgrade.

    For a list of suggested pre-upgraded changes, see Preparing a Version 8.1 Application for Upgrade.

    Also, see Changes During Upgrade from WebLogic Workshop 8.1 to Version 9.2. That topic lists upgrade-related issues, providing links to more information.

  4. Use upgrade tools to upgrade the version 8.1 application.

    How To: Use the Import Wizard to Upgrade Version 8.1 Applications describes how to use the tool.

    You can also perform the wizard's work through the upgradeStarter Command or upgrade Ant Task.

  5. Use the upgrade log and these topics to determine how to start fixing any post-upgrade problems that might keep your upgraded application from running.

Preparing a Version 8.1 Application for Upgrade

If your applications are complex, upgrading them from version 8.1 to version 9.2 is likely to be a multi-step process. A key part of that process will be the upgrade support the IDE provides via upgrade tools. But you'll also find that some preparatory work on your version 8.1 application makes the wizard's end result much easier to work with and get running.

Take a look through the upgrade documentation provided here. Many of the notes recommend ways to edit your version 8.1 application to make your upgraded code easier to get running.

Actions Performed By Upgrade Tools

Workshop for WebLogic includes three tools that automate most parts of the upgrade process. Each tool does essentially the same thing, allowing you to specify applications and parameters for upgrade: the import wizard is available as user interface in the IDE; upgradeStarter Command exposes options from the command line; and the upgrade Ant task exposes options for use from Ant.

Note: You can also upgrade individual files once they're in the version 9.2 IDE. To do this, right-click the file, then click Upgrade Source Files. For information about the error logging and message verbosity options, see To Import and Upgrade a Version 8.1 Application.

The following briefly describes actions performed (and not performed) by the upgrader.

Viewing the Upgrade Log

Whether you use the import wizard, command-line, or Ant task to upgrade, Workshop for WebLogic will generate a log of the upgrade changes, errors, and warnings. If you use the import wizard, this log will also be displayed in a dialog you can review before completing the process.

Upgrade Preview Dialog

You can expand the node for each file to view the upgrade messages associated with that file. The following key describes the symbols displayed next to file names:

Informational message.

Warning message.

Error message.

Text Log File

Upgrade tools generate a log file containing upgrade messages. This file is available at the following location after upgrade has completed:

UPGRADE_WORKSPACE_HOME\.metadata\upgrade.log

A log message in the file will take the following form:

!SUBENTRY 1 com.bea.wlw.upgrade severity_level date time
!MESSAGE Upgrade-related message.

The severity_level will be two numbers, but they have the same meaning. The date and time entries refer to when the upgrade was attempted. The upgrade-related message describes what was done, warned about, or the error that occurred. The following is a snippet that shows two log entry examples:

!SUBENTRY 1 com.bea.wlw.upgrade 2 2 2006-02-27 17:17:53.687
!MESSAGE The 9.2 control context only supports a subset of the 8.1 control context APIs. Please see the Workshop for WebLogic upgrade documentation for more information.

!SUBENTRY 1 com.bea.wlw.upgrade 1 1 2006-02-27 17:17:53.687
!MESSAGE The import "com.bea.control.JwsContext" needs to be updated.

Notes About General Issues

The following describes problems you might see after upgrade, but which aren't tied to particular component types or technologies. For upgrade-related issues associated with specific technologies, see the topics listed under Related Topics.

Version 8.1 Applications with Dependencies on Third-Party Library JARs Might Result in Version 9.2 Compile Errors

Generally speaking, the upgrade process will present a warning message when a precompiled library must be recompiled to be used in the version 9.2 environment. However, there might be cases when the library should be recompiled but no message is presented. In other words, consider recompiling these libraries when you see compile errors in a project that you can't otherwise account for.

Application Library JAR Files Whose Manifest Has Line Lengths Exceeding 72 Bytes Will Cause Build Errors

Unlike version 8.1, version 9.2 enforces the line length size limit in JAR file manifests when the JAR is used as an application library. Upgraded applications containing JARs with lines exceeding the limit will generate errors at build time. To work around this change, either reduce the size of the lines or remove the manifest from the JAR.

Upgraded Code That Uses Internal APIs from weblogic.jar Will Break in Version 9.2

The use of internal APIs is not supported and the version 9.2 classpath does not (and should not) include weblogic.jar. Public APIs that used to be in weblogic.jar have been moved into wls-api.jar. The workaround for breakage due to the absence of weblogic.jar from the classpath is to rewrite code to use public APIs.

In addition, code that uses third-party APIs is not supported for upgrade to version 9.2.

Upgraded Code May Conflict with New Java 5 and JSP 2.0 Language Features

New language features in Java 5 and the JSP 2.0 expression language (which is used by the Beehive tag libraries) might make it necessary to rewrite portions of upgraded code.

For example, new features reserve words that were not reserved for code written in version 8.1. Workshop for WebLogic upgrade tools do not upgrade the use of these words, so code that uses them will not compile until you rewrite it so that it accounts for the new language features.

In particular, Java 5 adds the enum keyword. For more information, see Enums at the Sun web site.

JSP 2.0 reserved word are listed in Reserved Words Can Not Be Used as Identifiers.

In addition, upgraded code might encounter many changes in the Java APIs. With the addition of generics to the Java language, method signatures that took Object parameters in Java 1.4 have become more strongly typed. This enables Workshop for WebLogic version 9.2 to detect many errors at compile time that would only appear at run time in version 8.1. For example, if you wrote:

String s;
Thing t;
s.compareTo(t);

you would see no compilation error in version 8.1, but a ClassCastException would occur at run time. In version 9.2, compareTo(t) will be flagged as an compile time error because String.compareTo() actually expects a String parameter in 9.2, but only requires an Object in 8.1.

As a general rule, debugged code will not contain these types of errors. But when they appear during post-upgrade compilation, the code must be fixed by the developer before the project will build successfully.

Upgraded Wildcard Import Statements Might Leave Some Types Stranded Without an Import

During the upgrade process, Workshop for WebLogic upgrade tools update package import statements to support the movement of key libraries. In some cases, this might break code that uses a class from the version 8.1 package that is still in that package. For example, upgrade tools will make the following changes:

import com.bea.wlw.netui.util.*;

... would be changed to...

import org.apache.beehive.netui.util.*

This leaves com.bea.wlw.netui.util.TemplateHelper stranded without an import because it is still in the older package. You can easily repair the code by using the Workshop for WebLogic quick fix feature to import required packages. Another, more thorough fix would be to remove wildcards and explicitly import classes in the version 8.1 code before upgrading it.

Version 8.1 Pointbase APIs are Not Supported in Upgraded Code

Version 8.1 includes APIs provided with the Pointbase database. These are not supported in version 9.2.

XML Schemas That Were Valid in Version 8.1 May Not be Valid in Version 9.2

Version 8.1 of the IDE allowed the use of schemas that were not standards-compliant; version 9.2 does not. As a result, invalid schemas will generate errors during upgrade. Note, however, that while errors will appear in the IDE, the errors should not effect runtime behavior.

If you want to continue using the schemas in their invalid state but don't want errors displayed in the IDE, you can turn off schema validation. If you turn off validation, it will be off for all schemas, even though you may want to have validated. To turn off schema validation:

  1. Click Window > Preferences.
  2. In the Preferences dialog, in the left pane, click Validation.
  3. In the right pane, under Validation, clear the XML Schema Validator check box.
  4. Click OK.

WebLogic Workshop Version 8.1 Domains Can Be Upgraded from Within Version 9.2

When you create a new server as described in Creating a Server Definition for Use Within the IDE, you can upgrade a WebLogic Workshop version 8.1 domain.

  1. In Workshop for WebLogic, click File > New > Server.
  2. In the New Server dialog, under Select the Server Type, choose a new WebLogic Server type. For example, you can choose BEA WebLogic v9.2 Server.
  3. Make other settings as needed, then click Next.
  4. In the Domain home box, enter or browse for the WebLogic Workshop domain you want to upgrade.
  5. With the path to a domain in the Domain home box, the dialog will display the following as a link:

    An older version domain is detected. Click here to upgrade it with the Upgrade Wizard.

  6. Click the "older version" link to launch the BEA WebLogic Upgrade Wizard.
  7. Follow the steps in the domain upgrade wizard as described in Procedure for Upgrading a WebLogic Domain.

Related Topics

Upgrading Web Services

Upgrading Page Flows

Upgrading Controls

Upgrading Annotations

Upgrading Enterprise JavaBeans

 

Skip navigation bar   Back to Top