R12 includes Oracle’s Containers for J2EE ( R12 OC4J)



Last updated on August 31st, 2016 at 08:16 am

R12 includes Oracle’s Containers for J2EE (R12 OC4J)

-Through R12 OC4J you can execute Servlets, Java Server Pages (JSP), Enterprise Java Beans (EJB)
-OC4J replaces the older JServ implementation for running servlets on the web server
-Oracle Application Server 10gR3 (10.1.3) is the latest production version
-OC4J is based on J2EE standards:Specific directory structure,File requirements (content & naming conventions),XML file definition
-OC4J instances run in JVM’s and communicate through mod_oc4j / Apache
-R12 creates 3 OC4J instances:
Oacore: runs OA Framework-based applications
Forms: runs Forms-base applications
OAFM: runs web services, mapviewer, ascontrol
Number of OC4J instances for each group will be determined by corresponding nprocs context variable ( s_oacore_nprocs, s_forms_nprocs/s_frmsrv_nprocs, s_oafm_nprocs).

-Servlets deployed to OC4J server adhere to J2EE specification
-Deployment is through an Enterprise Archive (EAR) file, which contains the application definition and Web Application (WAR) files, which in turn includes the web application code (JAR), and associated configuration files (servlet definitions), JSP code,HTML
-Forms.EAR 10.1.2 is deployed to the OC4J container in Application Server 10.1.3
-AutoConfig is used for configuration management, similar to Release 11i
-Important files used for configuation of OC4J instances
Oc4j.properties : defines basic Apps directory aliasing,dbc file location is defined in this file
Server.xml : defines J2EE applications and their shared libraries for runtime OC4J
Orion-application.xml : defines location of Java classes of all J2EE web modules deployed under J2EE application
Orion-web.xml : defines servlet level parameters for J2EE web modules

These files are synomynous with jserv.conf,jserv.properties in 11i

Oracle Process Manager and Notification server (OPMN) manages AS components and consists of:
-Oracle Notification Server (ONS):Delivers notifications between components
OHSOPMNOC4J
-Process Manager (PM) start,stop, restart, death detection
($ADMIN_SCRIPTS_HOME contains the Apps equivalent scripts called ad*)
-Single configuration file(opmn.xml) is used OPMN to manage the services. Config file location is given as $ORA_CONFIG_HOME/10.1.3/opmn/conf/opmn.xml

Services managed by opmn are

1) HTTP_Server
2) oacore
3) forms
4) oafm

Some more feature related to R12 OC4J 

-There is a new parameter defined in R12 : s_oacore_append.classpath

This parameter is used to add custom jar files to OC4J

-There is a new parameter defined in R12 : s_jsp_main_mode
s_jsp_main_mode values could be just run or recompile

Just run means it will try run the jsp…if the jsp is not compiled ,,it will fail
recompile means it will compile the jsp at run time.

Its value can be seen in the file

$INST_TOP/ora/10.1.3/j2ee/oacore/application-deployments/oacore/html/orion-web.xml

-Recompile the JSP manually using the following steps:

cd $FND_TOP/patch/115/bin
perl ojspCompile.pl –compile –flush -p 2

-adopmnctl.sh status in $ADMIN_SCRIPTS_HOME can be used to see the status of IAs components
-s_oacore_prepend_classpath,s_oacore_append_classpath variables are there
The Prepend classpath would be useful if the customer would want to override any of the default class libraries with custom class library. java bootstrap class loader searches for the classes from left to right of the CLASSPATH).
The append classpath would be useful if the customer wants additional custom class libraries, that he/she might want to use without accidentally overriding the class implementations specified in the default class library.


Leave a Reply