Thursday, October 11, 2012

[OBIEE 10g] What Is OC4j

What is OC4J

OC4J is short for Oracle Containers For J2EE. It is a smaller version of Oracle Application server. Interestingly, on knowing this a new question came to my mind. What exactly is an application server?  Now I vaguely understand what an application server is but it's time I spend a good amount of time to understand it better and more deeply.

Application Server: Also called an appserver. A program that handles all application operations between users and an organization's backend business applications or databases. Application servers are typically used for complex transaction-based applications. To support high-end needs, an application server has to have built-in redundancy, monitors for high-availability, high-performance distributed application services and support for complex database access.
Having stated that I have to admit I have to do some research on application servers and understand them better. This way I would position myself better in understanding the architecture of OBIEE or for that matter any other application.
Coming back to OC4J, Oracle defines OC4J in the following way:

Oracle Containers for J2EE (OC4J) is the core J2EE runtime component of Oracle Application Server. Being J2EE 1.4 compatible and running on standard J2SE distributions, OC4J maintains its heritage of being easy to use and highly productive for developers, while at the same time, offering outstanding performance and scalability for production environments. 

But a more elaborate understanding of OC4J can be found here

An important part of the article is below:

OC4J is a slimmed down version of Oracle Application Server. For those that have done an OBIEE install, you are familiar with the one installation prompt where you can choose either the standard or advanced option.  If you choose advanced you are prompted to provide Oracle Application Server connection information. Otherwise, you are defaulted to OC4J.  And, this version of OC4J that you get with OBIEE is a pre-packaged “StandAlone” (or, unmanaged) version that only has a little more than the basic functionality that the full-blown Oracle Application Server (OAS) has.  Think of OC4J as OAS-lite.

Now to some specifics.  OC4J is entirely written in Java. It is a complete J2EE compliant environment that provides all the containers, APIs, and services that enable a J2EE product to run.  It runs on the Java Virtual Machine (JVM) which is provided inside of the JDK (version 1.5 or higher).  This is the reason why during the install you must actually reference where your JDK install directory exists.  It is because it’s heavily used by OC4J.  All of these relationships to Java is why OC4J stands for Oracle Containers for J2EE.

Most people don’t even know that OC4J standalone comes with a application server administration tool.  You could re-deploy another instance of analytics or deploy any other J2EE compliant application just like you would with WebLogic or WebSphere using OC4J.  Remember that password that you entered for OC4JAdmin during the installation? Well just navigate to the following URL on your OC4J installation box, http://:9704/em, enter that password, and presto, you are able to now manage the deployed analytics.war application that got deployed during your OBIEE installation.

No comments:

Post a Comment