Welcome!

Weblogic Authors: Yeshim Deniz, Elizabeth White, Michael Meiner, Michael Bushong, Avi Rosenthal

Related Topics: Weblogic

Weblogic: Article

A Migration Strategy for WebLogic Server 5.1 to 8.1

Overview, Advantages, and New Features

BEA retired its WebLogic Server 5.1 on February 1, 2004. It had been supported for four years prior to retirement. One of the options for migrating applications that are running on 5.1 is to use WebLogic Server 8.1, which provides a range of new features for J2EE 1.3-based applications.

I'll give you an overview of the significantly important features in WebLogic Server 8.1 and the high-level activities involved in migrating applications from WebLogic Server 5.1 to 8.1.

New Features in WebLogic Server 8.1

JDBC Features
WebLogic Server 8.1 SP1 includes a new JDBC driver from BEA for connecting to a Microsoft SQL Server database. The BEA WebLogic Type 4 JDBC MS SQL Server driver replaces the WebLogic jDriver for Microsoft SQL Server that's been deprecated. The new driver:
  • offers JDBC 3.0 compliance and better performance
  • supports distributed transactions through XA support
  • supports multilingual application development on any operating system platform to access both Unicode- and non-Unicode-enabled databases
Administration Features
WebLogic Server 8.1 provides a System Administration Console that's a web browser-based graphical user interface (GUI) to manage a WebLogic Server domain. One instance of WebLogic Server in each domain is configured as an Administration Server. The Administration Server provides a central point for managing a WebLogic Server domain. All other WebLogic Server instances in a domain are called Managed servers.

The features offered by WebLogic Server 8.1 System Administration Console are:

  • Configure, start, and stop WebLogic Server instances
  • Configure WebLogic Server clusters
  • Configure WebLogic Server services such as database connectivity (JDBC) and messaging (JMS)
  • Configure security parameters including managing users, groups, and roles
  • Configure and deploy applications
  • Monitor server and application performance
  • View server and domain log files
  • View application deployment descriptors
  • Edit selected runtime application deployment descriptor elements
The Administration Console provides additional runtime data for servers running with the JRockit Virtual Machine.

Security Features
The SSL implementation of WebLogic Server supports KeyStores for storing Private Keys and trusted Certificate Authorities (CAs). KeyStores add a level of protection to the flat files used in past releases of WebLogic Server.

WebLogic Server 8.1 supports standard J2EE security technologies such as Java Authentication and Authorization (JAAS), Java Secure Sockets Extension (JSSE), and Java Cryptography Extensions (JCE).

Supported Standards
WebLogic Server 8.1 supports the Java standards shown in Table 1.

WebLogic Server 8.1 supports the Web Services Standards shown in Table 2.

Table 3 shows some additional standards supported in WebLogic Server 8.1.

Migration Strategy

Steps (Tasks) for Migrating from WebLogic 5.1 to WebLogic 8.1
Creation of a WebLogic Domain
A domain is the basic administration unit for WebLogic Server instances. It consists of one or more WebLogic Server instances that can be managed with a single administration server. A domain can include multiple WebLogic Server clusters or non-clustered WebLogic Server instances. A minimal domain can contain only one WebLogic Server instance, which functions as both an administration server and as a managed server. But, it's best to use a dedicated administration server and create one or more managed servers, depending on the applications.

Each server instance in a WebLogic environment must have a unique name, regardless of the domain or cluster in which it resides, or whether it's an administration server or a managed server. In a domain each server, machine, cluster, virtual host, and any other resource type must be uniquely named and must not use the same name as the domain. For WebLogic JMS, this strict unique naming rule also applies to JMS resources, such as JMS servers and stores in multi-domain environments when using the WebLogic Messaging Bridge or the Foreign JMS Server feature for intra-domain operability.

A simple production environment can consist of a domain with several managed servers that host applications and an administration server to do the management operations. In this configuration, applications and resources are deployed to individual managed servers; similarly, clients that access the application connect to an individual managed server.

Production environments that require increased application performance, throughput, or availability can configure two or more managed servers as a cluster. Clustering allows multiple managed server to operate as a single unit to host applications and resources.

The managed servers in a production WebLogic Server environment are often distributed across multiple machines and geographic locations.

Node Manager is a Java utility that runs as a process separate from WebLogic Server and lets you perform common operations tasks for a managed server, regardless of its location with respect to its administration server. While using Node Manager is optional, it provides valuable benefits if your WebLogic Server environment hosts applications with high-availability requirements.

If you run Node Manager on a machine that hosts managed servers, you can start and stop the managed servers remotely using the Administration Console or command line. Node Manager can also automatically restart a managed server after an unexpected failure.

A Node Manager process isn't associated with a specific WebLogic domain. Node Manager resides outside the scope of a domain, and you can use a single Node Manager process to start managed servers in any WebLogic Server domain that it can access.

WebLogic Server administration domain and server configurations can be created using the Configuration Wizard, which can also be used to configure resources like database connectivity (JDBC), Messaging Services (JMS), security groups, security roles, and user accounts. It can also be used to modify existing domains.

Understanding WebLogic Domain Directory Structure
The servers and applications in WebLogic Server 8.1 are managed in WebLogic Server domains. It's best to locate the domain directories outside the WebLogic Server installation directory. They can be in any location that can access the WebLogic Server installation and JVM. The tree in Figure 1 depicts the directory structure of a typical WebLogic domain.

Converting the WebLogic-related property files
WebLogic Server 5.1 used a "weblogic.properties" file to configure applications.

In WebLogic Server 8.1, configuration is handled by a domain configuration file, config.xml, and by deploying descriptor files. Converting a "weblogic.properties" file to the config.xml file creates a WebLogic Server 8.1 domain for your applications and generates the XML files that define how your applications are set up. The important things to consider for migrating a WebLogic property file from 5.1 to 8.1 are listed in table 4.

Location of the application-related property files
Every application - Web application or enterprise application - has its own property files that are meant to configure the application. These property files can be part of the application-related archive files (EARs or WARs) or they can be stored in the WebLogic Server 8.1 domain directory.

The WebLogic Server 8.1 domain directory will be the "Current Working Directory" for all applications deployed in a particular domain.

The property files that are common across different applications deployed in a particular WebLogic Server 8.1 domain can also be stored in the domain directory.

Modifying the Startup Scripts
When the WebLogic Server 8.1 domain is created using the "WebLogic Server 8.1 Configuration Wizard," four script files will be created:
- startWebLogic.cmd
- installService.cmd
- uninstallService.cmd
- setEnv.cmd

The "startWebLogic.cmd" script can be used to start the WebLogic Server in the console mode. This script is generally used for running the WebLogic server in development mode.

The "installService.cmd" script is used to install the WebLogic 8.1 administration server as a Windows NT service. The default Windows NT service name that's created when the "installService.cmd" script executes is "beasvc <domain name>_<server name>." Some tuning needs to be done in the "installService.cmd" script before installing the Windows NT service. Some of the changes that can be done are:

  • Change the minimum and maximum memory to be used by the JVM for running the WebLogic 8.1 Server
  • Add any JVM parameters that need to be passed
  • Extend the classpath environment variable to include external classes or JAR files
Migration from JDK 1.3 to 1.4
WebLogic Server 5.1 was certified on JDK 1.3 whereas 8.1 is certified on JDK 1.4. As a result, all the application sources have to be migrated to JDK 1.4. The most commonly used method that's been deprecated in JDK 1.4 is the constructor for the "java.util.Date" class. The "java.util.Calendar" class has to be used to create the "java.util.Date" object.

Converting Applications to Enterprise Archives or Web Application Archives
Enterprise applications and Web applications could only be deployed in WebLogic Server 5.1 as exploded archive directories. They couldn't be deployed as archive files (EARs or WARs). With this approach, there was a good chance patches could be installed as individual class files or JSP files in the exploded archive directories.

WebLogic Server 8.1 supports deployments that are packaged either as archive files using the Jar utility, or as exploded archive directories. WebLogic Server 8.1 supports deployment of J2EE-specified standalone modules like Enterprise Java Beans and Resource Adapter modules. Standalone modules generally provide parts of a larger, distributed application, but don't necessarily provide a direct user interface.

WebLogic Server 8.1 supports deployment of all three types of J2EE applications, namely: Web applications, enterprise applications, and client applications. Table 5 provides information on the constituents in each type of J2EE application that can be deployed in WebLogic Server 8.1.

Recommendations

  • Deploy standalone Web applications, resource adapters, and EJBs as part of an enterprise application. It allows easier application migration, additions, and changes.
  • Deploy applications in exploded archive format only if:
    - Partial updates are necessary for the application without redeploying the entire application
    - The administration console has to be used for editing the deployment descriptors
    - The application performs direct file system I/O through the application context
    - The application contains static files that are periodically updated (for example, the use of Brio Reporting scripts as part of the Web application)
  • Package deployment files in an archive format (.ear, .jar, or .war) when distributing files to different users or environments.
Upgrading Enterprise Java Beans Applications
WebLogic Server 5.1 supported J2EE Enterprise Java Beans (EJB) version 1.1. WebLogic Server 8.1 supports both EJB v1.1 and EJB v2.0. This means that the 1.1 Beans used in WebLogic Server 5.1 can be deployed on WebLogic Server 8.1. But, it's best to migrate EJB 1.1 Beans to EJB 2.0 Beans before deploying them on WebLogic Server 8.1.

To migrate applications from WebLogic Server 5.1 to 8.1, it's best to migrate the EJBs from v1.1 to v2.0. These minimal changes have to be made for migrating EJBs from v1.1 to v2.0 on WebLogic Server 8.1:

  • Update the reference to DTD in the J2EE deployment descriptor (WEB-INF/ejb-jar.xml) to "<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>"
  • Update the reference to DTD in the WebLogic deployment descriptor (WEB-INF/weblogic-ejb-jar.xml) to "<! DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN" http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd" >"
  • Change the INITIAL_CONTEXT_FACTORY property for JNDI Lookup to use "weblogic.jndi.WLInitialContextFactory"
  • Change the PROVIDER_URL property for JNDI Lookup to use "t3://localhost:<port>"
Please refer to the J2EE specifications for EJB 2.0 and WebLogic documentation (http://e-docs.bea.com/wls/docs81/ejb/index.html) for the complete upgrade of EJBs from v1.1 to v2.0. The WebLogic Server DDConverter utility can also be used for converting EJB 1.1 Beans to EJB 2.0 Beans.

SSL Configuration Changes
The SSL Configuration has changed significantly from WebLogic Server 5.1 to WebLogic Server 8.1. Some of the important changes that have been made are:
- The Private Key file and the server certificate file can't be deployed as individual files in WebLogic Server 8.1. The Private Key file and the server certificate file have to be secured in a Java KeyStore before being deployed in WebLogic Server.
- The client certificate files can't be deployed as individual files in WebLogic Server 8.1. The client certificate files have to be secured in a Java KeyStore before being deployed in WebLogic Server.

The Private Key file in WebLogic Server 5.1 used to be in 'DER' format. It has to be converted to 'PEM' format before being imported into a Java KeyStore. These are the steps involved in converting a Private Key file that's in 'DER' format into 'PEM' format and loading it into a new Java KeyStore file:

  1. Copy the Private Key file xenon-key.der and certificate file xenon-cert.pem into <Drive>:\tmp\certs directory
  2. Create a text file called <Drive>:\tmp\certs\header.txt file and store the following information. Note that the header.txt file should end with a new line.
    -----BEGIN RSA PRIVATE KEY-----
  3. Create a text file called <Drive>:\tmp\certs\footer.txt and store the following information. Note that the footer.txt file should end with a new line.
  4. -----END RSA PRIVATE KEY-----
  5. Open a command window
  6. Run <Drive>:\bea\wls810\user_projects\domains\WSDomain\setenv.cmd
  7. Change the directory to <Drive>:\tmp\certs and execute java utils.der2pem xenon-key.der header.txt footer.txt.

    A new file named xenon-key.pem file has to be created in <Drive>:\tmp\certs directory.

  8. Import the Certificate-Key pair xenon-cert.pem/ xenon-key.pem files into a KeyStore file using the following steps:
    a. Copy the xenon-cert.pem into xenon-cert-chain.pem
    b. Append the contents of the VerisignRSACA root certificate (or any other root certificate) in Base 64 format to xenon-cert-chain.pem
    c. Execute the following command to create a new Private KeyStore:
java utils.ImportPrivateKey xenon.ks filepass xenonAlias keypass xenon-cert-chain.Pem xenon-key.pem

Check if the KeyStore is valid by opening it in the KeyTool GUI. The SSL setup in WebLogic Server 8.1 can be done using the administration console.

Summary

WebLogic Server 8.1 SP1 provides a stable environment for Web applications and enterprise archive applications. The WebLogic Server Administration Console, WebLogic Workshop, and the numerous other tools that are part of WebLogic Server 8.1 provide additional value when migrating or developing new applications on WebLogic Server 8.1. The steps mentioned in this article are some of the crucial tasks that architects and developers should be aware of while migrating or developing new applications on WebLogic Server 8.1.

Acknowledgements

I would like to thank Venkataraman Sridharan, Pankaj Khandar, and Asha Veerabhadraiah for their assistance in preparing this article. Special thanks also to Linnae DeSanto and Venkataraman Sridharan for providing feedback and peer, editorial, and technical reviews.

More Stories By Manjunath Ganimasty

Manjunath Ganimasty is a solutions architect and lead developer working with HP's Imaging & Printing Group (IPG) Information Technology (IT) team. He has recently been working on projects with the Consumer Direct Integration Platform, helping to develop, deploy, and manage applications in the Web services environment. He has worked on telecommunication and supply chain related projects for Hewlett Packard for the past four years. Manjunath has a Bachelor's degree in Computer Science from Bangalore University and a Masters Degree from Georgia State University.

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.


@ThingsExpo Stories
SYS-CON Events announced today that Daiya Industry will exhibit at the Japanese Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Ruby Development Inc. builds new services in short period of time and provides a continuous support of those services based on Ruby on Rails. For more information, please visit https://github.com/RubyDevInc.
As businesses evolve, they need technology that is simple to help them succeed today and flexible enough to help them build for tomorrow. Chrome is fit for the workplace of the future — providing a secure, consistent user experience across a range of devices that can be used anywhere. In her session at 21st Cloud Expo, Vidya Nagarajan, a Senior Product Manager at Google, will take a look at various options as to how ChromeOS can be leveraged to interact with people on the devices, and formats th...
SYS-CON Events announced today that Yuasa System will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Yuasa System is introducing a multi-purpose endurance testing system for flexible displays, OLED devices, flexible substrates, flat cables, and films in smartphones, wearables, automobiles, and healthcare.
Organizations do not need a Big Data strategy; they need a business strategy that incorporates Big Data. Most organizations lack a road map for using Big Data to optimize key business processes, deliver a differentiated customer experience, or uncover new business opportunities. They do not understand what’s possible with respect to integrating Big Data into the business model.
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities – ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups. As a result, many firms employ new business models that place enormous impor...
SYS-CON Events announced today that Taica will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Taica manufacturers Alpha-GEL brand silicone components and materials, which maintain outstanding performance over a wide temperature range -40C to +200C. For more information, visit http://www.taica.co.jp/english/.
SYS-CON Events announced today that Dasher Technologies will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Dasher Technologies, Inc. ® is a premier IT solution provider that delivers expert technical resources along with trusted account executives to architect and deliver complete IT solutions and services to help our clients execute their goals, plans and objectives. Since 1999, we'v...
Recently, REAN Cloud built a digital concierge for a North Carolina hospital that had observed that most patient call button questions were repetitive. In addition, the paper-based process used to measure patient health metrics was laborious, not in real-time and sometimes error-prone. In their session at 21st Cloud Expo, Sean Finnerty, Executive Director, Practice Lead, Health Care & Life Science at REAN Cloud, and Dr. S.P.T. Krishnan, Principal Architect at REAN Cloud, will discuss how they b...
SYS-CON Events announced today that MIRAI Inc. will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. MIRAI Inc. are IT consultants from the public sector whose mission is to solve social issues by technology and innovation and to create a meaningful future for people.
SYS-CON Events announced today that TidalScale, a leading provider of systems and services, will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. TidalScale has been involved in shaping the computing landscape. They've designed, developed and deployed some of the most important and successful systems and services in the history of the computing industry - internet, Ethernet, operating s...
SYS-CON Events announced today that IBM has been named “Diamond Sponsor” of SYS-CON's 21st Cloud Expo, which will take place on October 31 through November 2nd 2017 at the Santa Clara Convention Center in Santa Clara, California.
Join IBM November 1 at 21st Cloud Expo at the Santa Clara Convention Center in Santa Clara, CA, and learn how IBM Watson can bring cognitive services and AI to intelligent, unmanned systems. Cognitive analysis impacts today’s systems with unparalleled ability that were previously available only to manned, back-end operations. Thanks to cloud processing, IBM Watson can bring cognitive services and AI to intelligent, unmanned systems. Imagine a robot vacuum that becomes your personal assistant tha...
SYS-CON Events announced today that TidalScale will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. TidalScale is the leading provider of Software-Defined Servers that bring flexibility to modern data centers by right-sizing servers on the fly to fit any data set or workload. TidalScale’s award-winning inverse hypervisor technology combines multiple commodity servers (including their ass...
As hybrid cloud becomes the de-facto standard mode of operation for most enterprises, new challenges arise on how to efficiently and economically share data across environments. In his session at 21st Cloud Expo, Dr. Allon Cohen, VP of Product at Elastifile, will explore new techniques and best practices that help enterprise IT benefit from the advantages of hybrid cloud environments by enabling data availability for both legacy enterprise and cloud-native mission critical applications. By rev...
Infoblox delivers Actionable Network Intelligence to enterprise, government, and service provider customers around the world. They are the industry leader in DNS, DHCP, and IP address management, the category known as DDI. We empower thousands of organizations to control and secure their networks from the core-enabling them to increase efficiency and visibility, improve customer service, and meet compliance requirements.
With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend 21st Cloud Expo October 31 - November 2, 2017, at the Santa Clara Convention Center, CA, and June 12-14, 2018, at the Javits Center in New York City, NY, and learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.
SYS-CON Events announced today that N3N will exhibit at SYS-CON's @ThingsExpo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. N3N’s solutions increase the effectiveness of operations and control centers, increase the value of IoT investments, and facilitate real-time operational decision making. N3N enables operations teams with a four dimensional digital “big board” that consolidates real-time live video feeds alongside IoT sensor data a...
Amazon is pursuing new markets and disrupting industries at an incredible pace. Almost every industry seems to be in its crosshairs. Companies and industries that once thought they were safe are now worried about being “Amazoned.”. The new watch word should be “Be afraid. Be very afraid.” In his session 21st Cloud Expo, Chris Kocher, a co-founder of Grey Heron, will address questions such as: What new areas is Amazon disrupting? How are they doing this? Where are they likely to go? What are th...
In his Opening Keynote at 21st Cloud Expo, John Considine, General Manager of IBM Cloud Infrastructure, will lead you through the exciting evolution of the cloud. He'll look at this major disruption from the perspective of technology, business models, and what this means for enterprises of all sizes. John Considine is General Manager of Cloud Infrastructure Services at IBM. In that role he is responsible for leading IBM’s public cloud infrastructure including strategy, development, and offering ...
Digital transformation is changing the face of business. The IDC predicts that enterprises will commit to a massive new scale of digital transformation, to stake out leadership positions in the "digital transformation economy." Accordingly, attendees at the upcoming Cloud Expo | @ThingsExpo at the Santa Clara Convention Center in Santa Clara, CA, Oct 31-Nov 2, will find fresh new content in a new track called Enterprise Cloud & Digital Transformation.