How to Reload APPS Java Class Objects in R11i/R12

 

Introduction

Oracle R12 application contains lots of apps related java classes. Sometimes because of JVM corruption, we could have missing java classes situation.

Using the utility adadmin it is possible to rebuild the JAR/ZIP files and have these loaded into the database.

This can be also used if the JVM was rebuilt for some reason.
The solution can also be helpful for customers that have some invalid APPS Java Classes.

How to Reload APPS Java Class Objects in R11i/R12

Before providing steps to do the rebuild and load it is necessary to be aware of unpublished bugs
The issue is that the file $AD_TOP/admin/driver/adldjava.drv used by adadmin to reload the JAR files into the Database is incorrect.

Using the utility adadmin it is possible to rebuild the JAR/ZIP files and have these loaded into the database. Before providing steps to do the rebuild and load it is necessary to be aware of  unpublished bugs :
Bug 5148348 – ADADMIN DOES NOT LOAD JAR FILES AFTER RUNNING RMJVM.SQL
Bug 6079327 – FILE ADLDJAVA.DRV IS NOT UP TO DATE. RESULTING IN INVALID JAVA CLASSES
The issue is that the file $AD_TOP/admin/driver/adldjava.drv used by adadmin to reload the JAR files into the Database is incorrect.

The contents of $AD_TOP/admin/driver/adldjava.drv should be:

For 11.5.9 -> 11.5.10.2

loadjava csf java/jar csflf.jar
loadjava cz java/jar czdb.jar
loadjava eam java/jar eampmsch.jar
loadjava eam java/jar eamwkbch.jar
loadjava ecx java/jar ecxutils.jar
loadjava ecx java/jar ecxprocess.jar
loadjava fnd java/3rdparty/stdalone xmlparserv2.zip
loadjava fnd java/jar fndcct.jar
loadjava inv java/jar invdbtrx.jar
loadjava inv java/jar invlabel.jar
loadjava itg java/jar itgv1.jar
loadjava jtf java/jar jtfaoljdepen.zip
loadjava per java/jar perimage.jar
loadjava per java/jar perkigfclient.jar
loadjava per java/jar perkpiclient.jar
loadjava wms java/jar wmscrtzn.jar
loadjava xtr java/jar xtrintrp.jar

For R12.0.6 -> R12.2

loadjava csf java/jar csflf.jar
loadjava cz java/jar czdb.jar
loadjava eam java/jar eampmsch.jar
loadjava eam java/jar eamwkbch.jar
loadjava ecx java/jar ecxutils.jar
loadjava ecx java/jar ecxprocess.jar
loadjava fnd java/jar fndcct.jar
loadjava inv java/jar invdbtrx.jar
loadjava inv java/jar invlabel.jar
loadjava jtf java/jar jtfaoljdepen.zip
loadjava per java/jar perimage.jar
loadjava per java/jar perkigfclient.jar
loadjava per java/jar perkpiclient.jar
loadjava wms java/jar wmscrtzn.jar

UPDATE ADLDJAVA.DRV

1. Make a back up of the current driver file $AD_TOP/admin/driver/adldjava.drv
2. Modify the contents of $AD_TOP/admin/driver/adldjava.drv to be as the list given above.

HOW TO REBUILD THE JAR/ZIP FILES

1. Run Adadmin
2. Select Generate Applications Files menu
3. Select Generate product JAR files

AD Administration Main Menu
————————————————–

1.    Generate Applications Files menu

2.    Maintain Applications Files menu

3.    Compile/Reload Applications Database Entities menu

4.    Maintain Applications Database Entities menu

5.    Change Maintenance Mode

6.    Exit AD Administration

Enter your choice [6] : 1

Compile/Reload Applications Database Entities
—————————————————

1.   Generate product JAR files

5.    Return to Main Menu

Related: How to restart and skip the job from adctrl
HOW TO RELOAD THE JAR/ZIP FILES INTO THE DATABASE

1. Run Adadmin
2. Select Compile/Reload Applications Database Entities menu
3. Select Reload JAR files to database

AD Administration Main Menu
————————————————–

1.    Generate Applications Files menu

2.    Maintain Applications Files menu

3.    Compile/Reload Applications Database Entities menu

4.    Maintain Applications Database Entities menu

5.    Change Maintenance Mode

6.    Exit AD Administration

Enter your choice [6] : 3

Compile/Reload Applications Database Entities
—————————————————

1.    Compile APPS schema

2.    Compile menu information

3.    Compile flexfields

4.    Reload JAR files to database

5.    Return to Main Menu
HOW TO RECOMPILE THE LOADED JAVA CLASSES

1. Run Adadmin
2. Select Compile/Reload Applications Database Entities menu
3. Select Compile APPS schema

AD Administration Main Menu
————————————————–

1.    Generate Applications Files menu

2.    Maintain Applications Files menu

3.    Compile/Reload Applications Database Entities menu

4.    Maintain Applications Database Entities menu

5.    Change Maintenance Mode

6.    Exit AD Administration

Enter your choice [6] : 3

Compile/Reload Applications Database Entities
—————————————————

1.    Compile APPS schema

2.    Compile menu information

3.    Compile flexfields

4.    Reload JAR files to database

5.    Return to Main Menu

Important Note

The number of APPS Java Classes from before rebuilding the JVM will be more than the number of APPS Java Classes after completing above steps. This is because when Applications is first installed it also loads a Base image of the Database. This image includes a lot of Java Classes that are no longer necessary to be loaded. The fact that the JVM has been recreated and the Java Classes reloaded, only those Java Classes that should be loaded have been loaded. The fact that the number of Java Classes decreases is correct and expected