You are on page 1of 2

R12: OC4J Overview

Hi Everyone!!
I thought to enter bit more in depth of R12 techstack. I was talking about 10.1.
2 AS and 10.1.3 AS oracle homes earlier. I have discussed why there are two Mid-
Tier oracle homes in my earlier post 10g AS in R12 ebiz.
In this post I will be covering OC4J. OC4J expands to Oracle Containers For Java
. Originally based on the IronFlare Orion Application Server, has developed sole
ly under Oracle's control since Oracle Corporation acquired the source.( this is
the reason why you see config files are named as orion-web.xml, orion-applicati
on.xml etc.,)
In laymans terms OC4J can be described as "Oracle's Implementation of J2EE speci
fication set".
Sample specification set can be found here.
For example you have finance application which got developed using JSP and servl
et specifications. You can package them as war/ear files and deploy them in OC4J
containers which will run the applications as per the clients' request from web
browser. There are lot more done by OC4J but above one was a simple example. It
will have xml based config files.(refer OC4J config files section in Unveiled I
nst top post.)
In R12 we have 3 groups of OC4J's. OC4J replaces Jserv(Java servlet containers)
which came with earlier 11i techstack.
oacore OC4J - Supports framework based applications
forms OC4J - Supports forms based applications
oafm OC4J - expands to Oracle Application Fusion Middleware - for mapviewer, web
services, ascontrol
Number of OC4J instances for each group will be determined by corresponding npro
cs context variable ( s_oacore_nprocs, s_forms_nprocs/s_frmsrv_nprocs, s_oafm_np
rocs).
-bash-2.05b$ ./adopmnctl.sh status
You are running adopmnctl.sh version 120.4
Checking status of OPMN managed processes...
Processes in Instance: r12test_ap6155rt.ap6155rt.us.oracle.com
-------------------+--------------------+---------+---------
ias-component | process-type | pid | status
-------------------+--------------------+---------+---------
OC4J | oafm | 27133 | Alive
OC4J | forms | 27064 | Alive
OC4J | oacore | 26775 | Alive
HTTP_Server | HTTP_Server | 26718 | Alive
ASG | ASG | N/A | Down
adopmnctl.sh: exiting with status 0
adopmnctl.sh: check the logfile /slot01/appmgr/R12/inst/apps/r12test_ap6155rt/lo
gs/appl/admin/log/adopmnctl.txt for more information ...
-bash-2.05b$
To be more precise, forms.ear application is deployed in forms OC4J to server fo
rms based applications. ( $IAS_ORACLE-HOME/j2ee/forms/applications/forms.ear)
oafm.ear, mapviewer.ear, ascontrol.ear applications (can be found at $IAS_ORACLE
-HOME/j2ee/oafm/applications/) are deployed under oafm OC4J container.
But remember, even if one file change in ear file, will leads to creation of new
ear file and redeployment, which is time consuming. hence the dummy ear file is
used and config files are tweaked to support adpatching in ebiz R12.
OC4J deployment will create specific directory structure and similar config file
s. I will cover them in detail in forthcoming posts.
I hope You understood bit about OC4J. Lot more to come.

You might also like