Monday, July 20, 2009

Migrating J2EE application from from Weblogic to JBOSS application server

1 Objective

Objective of this document provide insights, consideration and configuration changes that needs to be done for migrating the j2ee application from BEA Weblogic application server to JBOSS application server.


2 Assumptions

· Third party libraries used with Weblogic application servers are compatible with the JBoss application server
· If migration requires any JDK version upgrades, those changes are not covered in the scope of the requirement
· Migrations of third party adapters needed to communicate to third party component are not covered.
· Target Jboss version considered is 4.2


3 Migration Process

3.1 Potential issues with migrations

Java enterprise application servers are standard driven and adheres to JEE specifications. Even in that case when we want to migrate j2ee enterprise application from one application server to another application server, there are potential issues like

1. Completeness of Specifications:

Though JEE specification is very comprehensive some of the behaviors are not defined in specification like Class loading , clustering etc. which are critical for application migration

2. JDK compatibility :

Every vendor has implemented JDK like sun Microsystems , Bea Jrocket JDK. There could be subtle different behavior and bugs can be found between different java virtual machine

Following link provides the OS and JDK compatibility for JBOSS Application server 4.2 and 4.3







http://www.jboss.com/products/platforms/application/testedconfigurations/

1. Class loading mechanism


Web-logic class loader policy :

Following diagram depicts the class loader hierarchy for

Weblogic application server







JBOSS Server class loader






For the details about JBOSS class loader hierarchy you can find at
JBOSS Classloader hierarchy



As shown in the above figure the class loading mechanism is different between two application server. While migrating the application, review of class lading hierarchy requirements and isolation level of class loader across various modules ( wars, jars, rars) in the applications are necessary.


4. Different Specification versions

Weblogic (current version) and JBOSS (target version) may be supporting different JEE specification and underling JDK version . IT management needs to take decision about which specification needs to be targeted


5. Use of application server specifics

There could be some weblogic specific components that the applications is using , Typical candidates are
· Security Realms , context lookup, datasource , JMS configuration
· WEbservices developed using weblogic framework
· Proprietary components
· Clustering and caching mechanism , session replications
· Connection to third party systems for e.g integration adapters to systems like SAP, Siebel , People soft


3.2 Migration process Steps

Following diagram represent migration processes

No comments: