Skip to main content

One-stop shop to Compile JSPs in 11i, r12.1 and r12.2


Introduction –

Seasoned DBAs are already aware about architectural changes in 11i, r12 and r12.2. Likewise, there are some significant changes when you compile jsp pages in these versions. This article will cover important aspects when performing same action in different versions. We will start with 11i until r12.2 followed by a summary on differences and similarities.

JSP Cache

-          It is compiled version of JSP files.
-          They have extension .class.
-          They are stored in folder - _pages.



Compilation process of jsp file

JSP file ---conversion---> .java file ---compilation---> .class file


Differences when storing compiled .class files

In 11i, Apache JServe was responsible to compile jsp and convert the same into .class file while in r12, we have oc4j handling jsps.

Default location of compiled .class files
Release
Location
Prior 11i
$OA_HTML/_pages
11i
$COMMON_TOP/_pages
12.1
$COMMON_TOP/_pages
12.2
$EBS_APPS_DEPLOYMENT_DIR/oacore/html/WEB-INF/classes/_pages

Differences when locating perl script ojspCompile.pl

Default location of perl script ojspCompile.pl
Release
Location
11i
$JTF_TOP/admin/scripts
12.1
$FND_TOP/patch/115/bin
12.2
$FND_TOP/patch/115/bin

Differences when locating source jsp files

Default location of jsp source files
Release
Location
11i
$COMMON_TOP/html
12.1
$COMMON_TOP/webapps/oacore/html
12.2
$EBS_APPS_DEPLOYMENT_DIR/oacore/html 


Differences in nomenclature for .class files

Difference in naming convention for .class files
Release
JSP file
Class file
11i
AppsLocalLogin.jsp
_AppsLocalLogin.class
12.1
AppsLocalLogin.jsp
_AppsLocalLogin.class
12.2
AppsLocalLogin.jsp
__appslocallogin.class


One more significant change from r12.1 to r12.2 is Oracle 10g Application Server in 12.1.x has now been replaced by Oracle Fusion Middleware 11g.
We have WebLogic Admin manager and node manager that will now be managing oacore, forms and oafm as managed servers.
Prior to r12.2 they were part of opmn(Oracle Process Manager).
Above factors will play vital role in understanding steps to compile jsps in 3 versions later discussed in this article.

Steps to compile jsps

We use same script - ojspCompile.pl to compile jsps in all versions. However, location has changed, and steps have been summarized below.
I follow BBYM approach when performing any activity that involves files being modified manually or being modified by scripts.
Obviously, BBYM simply stands for 'Backup Before You Modify' :)


                                                   Oracle EBS 11i

                                             Compile Single JSP in Oracle ebs 11i
                                             Compile all JSP files in Oracle ebs 11i

                                                  Oracle EBS r12.1

                                             Compile Single JSP in Oracle ebs r12.1
                                             Compile all JSP files in Oracle ebs r12.1

                                                  Oracle EBS r12.2

                                             Compile Single JSP in Oracle ebs r12.2
                                             Compile all JSP files in Oracle ebs r12.2



References -

- 12.2 E-Business Suite JSP Page Handling, File Locations, Manual Compilation, And The Allowed JSP Features (Doc ID 1928874.1)
- Pythian Blogs


Comments

Popular posts from this blog

Logfile locations in EBS r12.1 and EBS r12.2

Startup/shutdown Apps tier services are started and stopped frequently and we must know logfiles when troubleshooting startup/shutdown issues. $INST_TOP/logs/appl/admin/log $INST_TOP/logs/appl/admin/log Apache OHS being part of opmn in r12.1 has continued in r12.2. Logfile locations for troubleshooting have been changed $INST_TOP/logs/ora/10.1.3/Apache/error_log[timestamp] $INST_TOP/logs/ora/10.1.3/opmn/HTTP_Server~1.log $IAS_ORACLE_HOME/instances/*/diagnostics/logs/OHS/*/*log*   OPMN Logfile locations for r12.1 and r12.2 have been changed $INST_TOP/logs/ora/10.1.3/opmn/opmn* $IAS_ORACLE_HOME/instances/*/diagnostics/logs/OPMN/opmn/* Oacore oacore in r12.1 is oc4j component and part of 10gAS. However, in r12.2, oacore is now a managed server for weblogic server $LOG_HOME/ora/10.1.3/j2ee/oacore/oacore*/ $LOG_HOME/ora/10.1.3/j2ee/oacore/oacore*/ $LOG_HOME/ora/10.1.3/opmn/oacore*/oacorestd

Query to Check AD and TXK code levels in your EBS environment

Below query can be very handy in finding out current AD and TXK code levels. col ABBREVIATION for a10 set lines 1000 col NAME for a50 col CODELEVEL for a20 SELECT ABBREVIATION,NAME,codelevel FROM AD_TRACKABLE_ENTITIES WHERE abbreviation in ('txk','ad'); ABBREVIATI NAME                                                CODELEVEL ---------- -------------------------------------------------- ------------ ad           Oracle Applications DBA                             C.11 txk         Oracle Applications Technology Stack                C.11

Compile all JSP files in Oracle ebs r12.2

Before you start compiling jsps and following below steps, I recommend understanding some key differences between 11i, r12.1 and r12.2 when it comes to compiling jsps. Please follow below link and then proceed further - One-stop shop to Compile JSPs in 11i, r12.1 and r12.2 1. Take a backup of _pages directory that will be modified due to jsp compilation - $ cd $EBS_APPS_DEPLOYMENT_DIR/oacore/html/WEB-INF/classes/ $ cp -R _pages _pages29dec2019 $ ls -ld _pages* drwxr-xr-x 5 applmgr oinstall 249856 Dec 29 16:36 _pages drwxr-xr-x 5 applmgr oinstall 249856 Dec 29 16:56 _pages29dec2019 2. Stop apache, oacore and oafm services - adapcctl.sh stop admanagedsrvctl.sh stop oacore_server1 admanagedsrvctl.sh stop oafm_server1 3. Compile the jsps manually using the below command - $ cd $FND_TOP/patch/115/bin/ $ perl $FND_TOP/patch/115/bin/ojspCompile.pl --compile --flush -p              4. Check class file last modification date as follows - $ cd $EBS_APPS_DEP