Callista Enterprise J2EE Portability Page

We think that portability is one of the most valuable features in J2EE. It makes it possible [in theory] for customers to move a J2EE compliant application from one vendors J2EE server to another vendors J2EE server without making any changes in the application source code!

The purpose of this web page is to promote portability in J2EE by demonstrating that is actually works in the reality and not only in the theory.

Callista Deploy - a portability demo

"Callista Deploy" is a portability demo based on Sun's demo application "Java Pet Store" and the efforts done by the J2EE vendors in the "2002 J2EETM Deployathon Online!" initiated by Sun.

From the "2002 J2EETM Deployathon Online!" - page you can download J2EE vendor specific variants of the Java Pet Store application that can be deployed on each vendors J2EE server to prove that J2EE portability actually works.

This approach has however two drawbacks:

  1. In most cases have the vendors not only added vendor specific deployment descriptors but also made minor changes to the source code. 
    This is caused by either that the Java Pet Store source code itself is not totally J2EE compliant or that the J2EE server itself has some minor deviations from the J2EE specifications. 

  2. The main target of the J2EE vendor variants of Java Pet Store is to demonstrate how to deploy the Java Pet Store application of the vendors J2EE server. 
    It is therefore in general not possible to use the J2EE vendor variants of Java Pet Store to try out your own code changes in the source code on the specific J2EE server. This means that once you have made changes to the Java Pet Store source code and used its Ant-scripts to compile and assembly the ear-files then are you in general on your own to reaply the J2EE vendor changes manually. This is very time consuming and error prone.

The "Callista Deploy" portability demo address these shortcomings of the "2002 J2EETM Deployathon Online!" by:

  1. Providing one set of source code changes that is required for all the tested J2EE servers.

  2. A set of Ant-scripts that fully automate the deployment phase for each of the tested J2EE servers.
    In addition to the Ant-scripts in Java Pet Store that automate the compile and assembly phases we provide Ant-scripts that:

    1. Creates ear-files for each tested J2EE server with J2EE vendor specific deployment descriptors added, i.e. ear-files that are ready to be deployed on each J2EE server.
       
    2. Performs the actual deployment of the ear-files 

    3. Executes functional tests on the installation to ensure that the deployment was successful.

  3. J2EE server specific configuration files that define the J2EE resources (databases, jms queues and topics, mail sessions and user security settings) that the Java Pet Store code require.

This means that once you have applied our changes to the original source code for the Java Pet Store application you can fully automatically compile, assembly and deploy Java Pet Store on the tested J2EE servers. You can also make your own changes to the source code and repeat the automated compile, assembly and deployment cycle!

Get started here!