oraclegeek.net
Welcome to Oraclegeek arrow Oracle Applications arrow AutoConfig
Thursday, 09 September 2010
Welcome to Oraclegeek
Articles
Oracle 10g
Oracle 9i
Oracle Security
Oracle Applications
Oraclegeek Blog
Template Chooser
Computer Translations
AutoConfig Print E-mail
Written by amit poddar   
Sunday, 02 July 2006
Article Index
AutoConfig
Context File
Template and Driver Files
Customizing AutoConfig
Troubleshooting AutoConfig
Conclusion
Appendix

1.0 Introduction

Oracle Applications 11i consists of lots of configuration files and lots of profile options, which need to be all correctly set for the applications to work. Managing these profile options and configuration files manually is error prone. Autoconfig is a tool provided by the Oracle E-Business Suite to maintain these files and profile options. In this article, you will see how autoconfig works, what it does, what it does not do, over and above how to customize it to meet our requirements

2.0 Background

Oracle Applications has a complex architecture with many pieces of technology plugged in together. For example Apache Web server, Apache Jserv, Forms Listener servlet (or forms server) etc. Each of these pieces of technology has its own set of configuration files (and there are lots of them), which need to be set up correctly for them to function. Moreover Oracle Applications uses many profile options (e.g. Applications Web Agent, Applications Framework Agent etc) and other bits of information in the database to make the navigation seamless. These also need to be set correctly for the whole architecture to function seamlessly.

Before autoconfig these configuration files and profile options had to be maintained manually. If there were a need to change some configuration option, such as web server port or web domain name, the DBA would have to change all the files and profile options manually. This was quite error prone on two fronts. One the DBA needs to know and remember all the places where the change has to be made and secondly it introduces significant risks of typographical or other errors. These errors will (note I say will not may) result in long but unnecessary downtime.

This manual process is no longer recommended or supported by Oracle.

3.0 What Is AutoConfig?

In short autoconfig is an 11i configuration tool (set of java classes run from perl/shell scripts) introduced in 11.5.4, which obviates the need to manually maintain these configuration files and profile options.

Autoconfig maintains the environment specific values for the 11i environment in an xml file (stored in $APPL_TOP/admin). When autoconfig is run it overwrites the existing configuration files with new ones that it creates by merging the templates and the context file, it also updates the database by running the script it instantiates (merging a template with the values in the context file is termed as instantiating the template in Oracle parlance) from the script templates. That’s essentially what autoconfig does i.e. Instantiating configuration files from templates and updating database with values from the xml file. It does not move directories, check for availability of ports, update DNS entries and so on. These have to be done by you before running autoconfig.

4.0 How does it work?

Each configuration file has one (sometimes two, one for NT and one for UNIX) corresponding template file (provided by autoconfig patches, stored in $PROD_TOP/admin/template directory). Profile options and other instance specific information in the database is maintained by many sql scripts, called from wrapper shell/perl scripts. These scripts also have corresponding template files (also provided by autoconfig patches, `in $PROD_TOP/admin/templates). In these template files all the environment specific values are replaced by placeholders (like %s_webhost%).

Following entry in httpd.conf
Timeout 300
is replaced by following in its template $FND_TOP/admin/template/httpd_ux_ias1022.conf
Timeout %s_ohstimeout%

Environment specific values for this placeholder is stored in an environment specific xml file (called application context file) stored in $APPL_TOP/admin.

For e.g.
For the above placeholder the value stored in the xml file is:
<ohstimeout oa_var="s_ohstimeout">300</ohstimeout>

Each placeholder has a corresponding xml node in the context file. The placeholder name is the value for the “oa_var” attribute of the xml node, the placeholder name without the prefix “s_” (generally) is the node name for the xml node and the value is stored as a child text node. These xml nodes are termed as context variables by Oracle documentation and each node primarily is identified by its oa_var attribute value. So effectively we can say that in the above case we replace “300” by context variable “ohstimeout” whose oa_var value is “s_ohstimeout”.

Configuration files can be easily created from the template file by just replacing all the placeholders with the corresponding values from the context file. This process is termed as “instantiating the template” in Oracle documentation.

Driver files (stored in $PROD_TOP/admin/driver) store information about what to do with each template (e.g. instantiate it and replace the existing configuration file with it, instantiate it and run it). These files are named as <PROD_TOP>tmpl.drv (e.g. adtmpl.drv, fndtmpl.drv etc.) They contain one line for each template they manage.

When autoconfig (adconfig.pl or adconfig.sh) runs it just processes the driver file for each product, line by line doing what the driver file instructs it to do. The order of execution of each line is not sequential as we shall see later. The diagram below depicts the autoconfig functionality.

 

 



Last Updated ( Thursday, 13 July 2006 )
 
 
(C) 2010 oraclegeek.net
Joomla! is Free Software released under the GNU/GPL License.
Design by Mamboteam.com | Powered by Mambobanner.de