Oracle9i Application Server Migrating From WebSphere Release 2 (9.0.2) Part Number A95110-01 |
|
This chapter provides you with an overview of the J2EE platform, application servers, and the Oracle9i Application Server (Oracle9iAS). In addition, it provides you with an understanding of what is involved in migrating from WebSphere Advanced Edition 3.5.3 to Oracle9iAS.
The chapter contains these topics:
The application server market is evolving rapidly. In particular, the most significant development over the last few years is the emergence of Sun Microsystems' Java 2 Platform, Enterprise Edition (J2EE) Specification that promises to create a level of cross-vendor standardization.
The J2EE platform and component specifications define, among other things, a standard platform for developing and deploying multi-tier, web-based enterprise applications.
J2EE provides a solution to the problems encountered by companies moving to a multi-tier computing model. The problems addressed include reliability, scalability, security, application deployment, transaction processing, web interface design, and timely software development. It builds upon the Java 2 Platform, Standard Edition (J2SE) to enable Sun Microsystems' "Write Once, Run Anywhere" paradigm for multi-tier computing.
J2EE consists of the components described in Table 1-1:
The J2EE application model is a multi-tier application model. Application components are managed in the middle tier by containers. A container is a standard runtime environment that provides services, including life cycle management, deployment, and security services, to application components. This container-based model separates business logic from system infrastructure.
The J2EE platform consists of a runtime environment and a standard set of services that provide the necessary functionality for developing multi-tiered, web-based enterprise applications.
The J2EE platform consists of the components described in Table 1-2.
An application server is software that runs between web-based client programs and back-end databases and legacy applications. They help separate system complexity from business logic, enabling developers to focus on solving business problems. They help reduce the size and complexity of client programs by enabling these programs to share capabilities and resources in an organized and efficient way.
Application servers provide benefits in the areas of usability, flexibility, scalability, maintainability, and interoperability.
Oracle9iAS is a comprehensive, integrated application server that provides all of the infrastructure and functionality needed to run every successful e-Business. All development teams face a similar set of challenges--the need to rapidly deliver web sites and applications that run fast over any network and on every device; while providing business intelligence to support operational adjustments and strategic decisions. Oracle9iAS enables teams to address all of these e-business challenges.
Oracle9iAS has generated a great deal of interest in the application server market, and many organizations are embracing it to deploy their web-based enterprise applications.
Oracle9iAS offers the only integrated infrastructure to develop and deploy web sites and applications. It provides a complete J2EE platform for developing enterprise Java applications. It enables developers to develop web applications in any language including Java, Perl, PL/SQL, XML, and Oracle Forms. It enables the reduction of development and deployment costs through a single, unified platform for Java, XML, and SQL.
The J2EE server implementation in Oracle9iAS is called or OC4J. OC4J is J2EE 1.2 compliant and runs on the standard JDK. It is lightweight, provides high performance and scalability, and is simple to deploy and manage. OC4J can be deployed in standalone mode, which is ideal for development environments or with Oracle Enterprise Manager (OEM) to provide enterprise-level monitoring and management facilities.
The varying degrees of compliance to J2EE standards can make migrating applications from one application server to another a daunting task. Some of the challenges in migrating J2EE applications from one application server to another are:
These challenges make the migration path daunting, uncertain, and difficult to reliably plan and schedule. This chapter addresses the challenges in migrating your applications from WebSphere to Oracle9i Application Server, providing an approach to migration with solutions based on the J2EE version 1.2 specification.
The J2EE platform provides a multi-tiered distributed application model. Central to the J2EE component-based development model is the notion of containers. Containers are standardized runtime environments that provide specific services to components. Thus, Enterprise Java Beans (EJB) developed for a specific purpose in any organization can expect generic services such as transaction and EJB life cycle management to be available on any J2EE platform from any vendor.
Containers also provide standardized access to enterprise information systems; for example, providing RDBMS access through the JDBC API. Containers also provide a mechanism for selecting application behavior at assembly or deployment time.
As shown in Figure 1-1, the J2EE application architecture is a multi-tiered application model. In the middle tier, components are managed by containers: For example, J2EE Web containers invoke servlet behavior, and EJB containers manage life cycle and transactions for EJBs. The container-based model separates business logic from system infrastructure.
An issue is a condition that could cause unplanned work. Given the inherent challenges outlined above, it is helpful to examine the applications to be migrated in terms of the following before quantifying the migration effort:
Code may not be portable because it contains embedded references to vendor- specific extensions to the J2EE specification. In such cases, runtime exceptions, (for example, "class not found") may occur when applications are migrated and run from one J2EE-compliant application server to another. In addition, some J2EE application servers still support deprecated APIs and others are strictly compliant to the J2EE specifications. WebSphere contains extenstions to servlets, JSPs, EJBs, JNDI, and JDBC. In such cases, evaluating code and planning for its modification may be a significant part of the migration effort.
If Websphere-specific services are in use, migration of those components becomes difficult or unfeasible. These components may need to be redesigned and reimplemented,instead of being identified as migration candidates. This guide does not address complete redesign toward J2EE specifications. For example, applications using Component Broker (IBM ORB) services, CICS or Encina transaction monitors, MQSeries or DB2 libraries are not candidates for migration as defined in this guide.
Different application server vendors have different levels of support for J2EE standards, and some variations in behavior. For example, WebSphere Advanced Edition 3.5.3 is not fully compliant with the J2EE 1.2 specifications, but Oracle9i Application Server is. This fact alone raises issues with EJBs, JNDI, and security migration. This guide addresses those issues and explains how to migrate to Oracle9i Application Server without major code changes.
Our approach for this guide is to document our experiences with migrating components and/or example applications from WebSphere Advanced Edition 3.5.3 to Oracle9i Application Server Release 2. Guidelines for migrating from WebSphere Advanced Edition 4.0 to Oracle9i Application Server Release 2 is discussed in Appendix B, "Migrating from WebSphere 4.0".
We selected some of the examples shipped with WebSphere for this migration excercise.We tested these samples with WebSphere and migrated them to Oracle9i Application Server. In doing so, we exposed and documented specific migration issues not identified in the product documentation. As described in "J2EE Application Migration Challenges" these issues exist because WebSphere Advanced Edition 3.5.3 does not comply to the J2EE 1.2 specification, and because Websphere-specific API extensions are used.
This guide details the migration of components from WebSphere Advanced Edition 3.5.3 to Oracle9i Application Server. While it does not claim to be an exhaustive source of solutions for every possible configuration, it provides solutions for some of the migration issues listed above, which will surface, along with others, in your migration effort. The information in this guide helps you to assess the WebSphere Advanced Edition 3.5.3 applications and plan and execute their migration to Oracle9i Application Server. The material in this guide supports these high-level tasks:
In this document, unless otherwise specified, any reference to WebSphere without a version number implies reference to WebSphere Advanced Edition 3.5.3.
Note:
|
Copyright © 2002 Oracle Corporation. All Rights Reserved. |
|