Friday, August 29, 2008

Application hierarchy in OC4J

This blog provides an overview of the application hierarchy within an OC4J instance.This will be helpful in understanding how the j2ee applications, bpel processes are able to access all the features like adapters which comes with the default application

The system Application – invisible parent

The system application is a new internal component in Oracle Containers for J2EE 10g ( It is auto-deployed to the OC4J instance the first time OC4J is started.

This application was added primarily to address issues related to deploying or redeploying applications to OC4J. It sits at the root of the application hierarchy, and provides classes and configuration required at OC4J startup. For example, it provides the shared libraries imported by default by all other deployed applications, such as the Oracle JDBC driver and XML parser implementations.

The system application is an OC4J internal component only. Applications cannot be deployed to it, nor can it be declared the parent of another application. The default application continues to serve as the default parent of all deployed applications.

The configuration for the system application is defined in system-application.xml, which is installed in ORACLE_HOME/j2ee/instance/config by default.

Because system is a key internal component that is critical to OC4J startup, the system-application.xml file should not be modified except for the and tags.

The default Application –visible parent inheriting system Application

The default application sits just below system in the application hierarchy. Every application deployed into OC4J must have a designated parent application. The default parent is the global application packaged with OC4J, which is named default.

Designating an application as a parent enables classes and services to be shared among the child applications. A child application sees the namespace of its parent application, and inherits the set of shared libraries imported by the parent. Configuration data is also imported from the parent, although it can be overridden at the child application level

Standalone Web modules (WAR files) may also be deployed to the default application.

The configuration for the default application is defined in application.xml, which is installed in ORACLE_HOME/j2ee/instance/config by default.

J2EE Applications- inherits from default Application

By default, an application deployed to an OC4J instance inherits configuration parameters from its designated parent application or from the default application if no other parent is specified. However, a parameter value set in an application's orion-application.xml descriptor overrides an equivalent parameter inherited from the parent.

Courtesy:: Oracle® Containers for J2EE Configuration and Administration Guide

No comments: