Why customise?
Autoconfig Customisation has the potential to make life much easier for an Oracle Applications DBA.
In short, it enables the creation of controlled templates that can make all of the things that have to be done after running autoconfig go away.
For example, generally after you run adautocfg.sh you then have to remember to comment out the mobile setting in the jserv files, otherwise the java server doesn’t start up. Wouldn’t it be nice to change the template so that it know that these should be commented out already? Well, with autoconfig customisation you can!
There are a couple of different approaches to this, the simplest involves just changing the template. The second involves adding a customisation value to the context file and then modifying the template to use that value.
Before we start
Before anything else is done, we must validate that the current configuration is good.
To do this run the following command (because of the profile we use, it is in our path):
adchkcfg.sh contextfile=$CONTEXT_FILE appspass=
The output of this is as follows:
The log file for this session is located at: /home/aicprj04/ICPRJ04/appl/admin/I
CPRJ04_ictap41/log/07211026/adconfig.log
AutoConfig is running in test mode and building diffs...
AutoConfig will consider the custom templates if present.
Using APPL_TOP location : /home/aicprj04/ICPRJ04/appl
Classpath : /home/aicprj04/ICPRJ04/comn/java/jdk1.6.0_
02/jre/lib/rt.jar:/home/aicprj04/ICPRJ04/comn/java/jdk1.6.0_02/lib/dt.jar:/home/
aicprj04/ICPRJ04/comn/java/jdk1.6.0_02/lib/tools.jar:/home/aicprj04/ICPRJ04/comn
/java/appsborg2.zip:/home/aicprj04/ICPRJ04/comn/java
Using Context file : /home/aicprj04/ICPRJ04/appl/admin/ICPRJ04_ictap41/out/07211026/ICPRJ04_ictap41.xml
Context Value Management will now update the test Context file
Updating test Context file...COMPLETED
[ Test mode ]
No uploading of Context File and its templates to database.
Testing templates from all of the product tops...
Testing AD_TOP........COMPLETED
Testing FND_TOP.......COMPLETED
...
Testing CSD_TOP.......COMPLETED
Testing IGC_TOP.......COMPLETED
Differences text report is located at: /home/aicprj04/ICPRJ04/appl/admin/ICPRJ04_ictap41/out/07211026/cfgcheck.txt
Generating Profile Option differences report...COMPLETED
Generating File System differences report......COMPLETED
Differences html report is located at: /home/aicprj04/ICPRJ04/appl/admin/ICPRJ04_ictap41/out/07211026/cfgcheck.html
Differences Zip report is located at: /home/aicprj04/ICPRJ04/appl/admin/ICPRJ04_ictap41/out/07211026/ADXcfgcheck.zip
AutoConfig completed successfully.
There are a couple of outputs, but I find the most useful output is the zip file. I generally copy this over and extract it out, then use a web browser to view the set of html pages. These explain what differences there are between what you have and what should be there. Ideally there should be no differences.
ADX Config Report is here.
The real benefit of this, is that you can look at the differences very easily and decide if they are important or not. Once the differences have been reviewed, and you are satisfied that the autoconfig baseline is correct, then we can move on to performing the customisation.
Customise a template
This is the simplest type of customisation as there is not additional variables.
You might follow this approach if there was a need to add a comment permanently to a file (for example to add entries to url_fw.conf).
To do this find the file that is needs to be changed and run the following:
adtmpreport.sh contextfile=$CONTEXT_FILE target=
The output will be like the following:
#########################################################################
Generating Report .....
#########################################################################
For details check log file: /home/aicprj01/ICPRJ01/appl/admin/ICPRJ01_ictap37/log/07211256.log
The important detail is in the log file:
=================================================================
Starting Utility to Report on Templates and their Targets at Mon Jul 21 12:58:36 BST 2008
Using ATTemplateReport.java version 115.7
[ INFO_REPORT ]
[FND_TOP]
TEMPLATE FILE : /home/aicprj01/ICPRJ01/appl/fnd/11.5.0/admin/template/url_fw.conf
TARGET FILE : /home/aicprj01/ICPRJ01/comn/conf/ICPRJ01_ictap37/iAS/Apache/Apache/conf/url_fw.conf
This indicates that if an addition needs to be made to the file urlfw.conf, then the template file is in $FND_TOP/admin/template and is called url_fw.conf
Apparently, not all templates can be customised. If there is the word LOCK in the application driver file, then it is not customisable.
So, in the above case, we should look for LOCK in $FND_TOP/admin/driver/fndtmpl.drv
If the file is customisable, then the following steps need to be done:
- Move to the directory that contains the source template, and make a directory called custom.
For example:
cd $FND_TOP/admin/template
mkdir custom - Copy the template into here, and then make the change to it.
- Then you should verify the customisation using the command
adchkcfg.sh
command. - Finally, run autoconfig to make the template properly.
Adding a context variable
Again, determine what the template that is going to be added as above. Then using Oracle Application Manager, add a new custom entry in the context file.
Then create a custom template exactly as above. When making your changes, refer to the new context value. For example to allow for controlling of mobile entries using context values I added the following to jserv_ux_ias1022.conf:
%c_DisableMobile%ApJServGroupMount /mobile balance://OACoreGroup/mobile
The %c_DisableMobile% is the custom value.
Again, validate that the file is going to work right, and then run autoconfig to make the change.
Final Note
This is all based on Metalink Note 270519.1