AutoConfig is a tool that simplifies and standardizes configuration management tasks in an Oracle Applications environment.
The configuration generated by AutoConfig may not always meet your specific requirements and it may be necessary to customize AutoConfig to get your environment up and running. Examples where you might want to customize AutoConfig include:
Start additional services or processes when you start Oracle Applications services
Define and add zones to your JServ configuration
Extend Forms to integrate with a third party Java version
Develop customer applications that are maintained by AutoConfig
Historically, Oracle did not document procedures on how to implement customizations. If you tried to customize your AutoConfig-generated files by manually editing them, your changes were lost every time AutoConfig ran. To avoid this, Oracle Support may have instructed you to add your customizations between "Begin/End customizations" blocks in the configuration files. This limited and inflexible method has now been superseded by a fully supported mechanism to extend your AutoConfig-maintained environment with maximum flexibility, preserving your extensions every time AutoConfig is run.
The following table discusses the terminology used in this document:
This section describes the prerequisites that must be met before you can customize AutoConfig.
Verify ADX mini-pack version
If you are not on ADX.F (11i.ADX.F) or later, apply the latest ADX mini-pack from OracleMetaLink.
Review your current configuration
Run the AutoConfig check utility as described in "Review and Resolve Manual Configuration Changes" of Note 165195.1 on OracleMetaLink. Review all the differences in the report and identify the manual configuration changes that you want to implement as customizations.
Review and migrate existing customizations
If you implemented customizations between "Begin/End customization" blocks in the past, then you have to migrate those settings now. Execute the following command:
This utility:
Detects all configuration files that have "Begin/End customizations" blocks.
Copies the corresponding AutoConfig template files to custom template files.
Appends the contents between "Begin/End customizations" blocks at the end of the custom template files.
Removes the "Begin/End customizations" blocks from the configuration file.
Review the logfile generated by the adcustomizer script. Ensure that all your customizations were successfully migrated to the custom template file(s) by examining the generated custom template file(s).
This section addresses the different types of customizations and how to implement them. After you identified your customization need, perform the steps associated with it. Oracle supports the following types of customizations:
Changing the value of an existing context variable
Use the Oracle Applications Manager Context Editor to change values of existing context variables. Refer to Oracle Applications Maintenance Procedures - Section Managing Configuration Parameters for information on how to use the Oracle Applications Manager Context Editor.
Adding a new context variable to the context file
Use the Oracle Applications Manager Context Editor if you want to add a context variable that is not maintained by AutoConfig. Refer to the Help pages available on your Oracle Applications Manager site. The relevant information for adding custom context variables is located in the "System Configuration" -> "AutoConfig" -> "Custom Parameters" section.
Note: You must have Oracle Applications Manager (OAM) H or higher installed to manage custom variables. Refer to Oracle Applications Manager 11i Availability for instructions on installing OAM.
Customizing an AutoConfig template file delivered by Oracle
If you want to customize an existing AutoConfig template file, perform the following steps (in the order listed):
Determine the AutoConfig template file you want to customize
Execute the following command to find out the corresponding AutoConfig template file for the configuration file you want to customize:
For example, if you want to customize
$COMMON_TOP/html/bin/appsweb_$CONTEXT_NAME.cfg, execute:
On UNIX
$AD_TOP/bin/adtmplreport.sh contextfile=$CONTEXT_FILE \
target=$COMMON_TOP/html/bin/appsweb_$CONTEXT_NAME.cfg
On Windows
%AD_TOP%\bin\adtmplreport.sh contextfile=%CONTEXT_FILE% \
target=%COMMON_TOP%\html\bin\appsweb_%CONTEXT_NAME%.cfg
The adtmplreport utility returns the name and location of the AutoConfig template file. For the above UNIX example it would return:
$FND_TOP/admin/template/appsweb.cfg.
You cannot customize all AutoConfig template files. The AutoConfig template file cannot be customized if the "LOCK" keyword appears in the template file's entry in the product driver file. AutoConfig ignores custom template files that are marked with "LOCK". For example, the following entry in <AD_TOP>/admin/driver/adtmpl.drv would prevent customization of the file adconfig.txt:
ad admin/template adconfig.txt INSTE8 <s_at>/admin adconfig.txt 600 LOCK
Create the custom template directory
Create a directory named "custom" at the location where the AutoConfig template file resides.
For example, if you want to customize <FND_TOP>/admin/template/appsweb.cfg, execute the following command as the applmgr user:
On UNIX
mkdir $FND_TOP/admin/template/custom
On Windows
mkdir %FND_TOP%\admin\template\custom
Note: The custom template directory may have already been created when you migrated your customizations as described in Review and migrate existing customizations.
Copy the AutoConfig template file
Copy the AutoConfig template file to the custom template file.
Execute the following command as the applmgr user:
On UNIX
cp -i <AutoConfig template file> <custom template file>
For example:
cp -i $FND_TOP/admin/template/appsweb.cfg \
$FND_TOP/admin/template/custom/appsweb.cfg
On Windows
copy <AutoConfig template file> <custom template file>
For example:
copy %FND_TOP%\admin\template\appsweb.cfg \
%FND_TOP%\admin\template\custom\appsweb.cfg
Note: The custom template file may have already been created when you migrated your customizations as described in Review and migrate existing customizations.
Edit the custom template file
Edit the custom template file with the editor of your choice, such as vi on UNIX or Wordpad on Windows.
Note: It is not supported to edit AutoConfig template files. Be sure to edit the custom template file only.
Verify your customizations
Execute the adchkcfg utility as described in Note 165195.1 on OracleMetaLink. When this utility runs, it instantiates any custom template files in place of the corresponding AutoConfig template file. The adchkcfg utility generates a report with information about all files and profile options that will be changed during the next normal execution of AutoConfig. Verify that your customizations would be applied as expected in your next AutoConfig run.
Run AutoConfig
Run AutoConfig as described in Note 165195.1 on OracleMetaLink. When AutoConfig runs, it instantiates any custom template file in place of the corresponding AutoConfig template file.
Customizing listener.ora and tnsnames.ora files
The customization of listener.ora and tnsnames.ora cannot be done through the custom template files as mentioned in step 3. The listener.ora and tnsnames.ora files can be customized using IFILE. The location of the respective ifile is specified at the end of the listener.ora and tnsnames.ora files.
Note: Prior to TXK RUP U there was no AutoConfig support for non-default listener name. AutoConfig supported only the default DB listener names. The default DB listener name
For RAC instances is LISTENER_<HOSTNAME>
For nonRAC instances is <SID>
TXK RUP U delivers a new feature for enabling customer-defined non-default listener names using the context variable s_db_listener. To customize the listener name, set the value of s_db_listener to the intended customized listener name and run the AutoConfig on DB Tier.
Creating a customer owned AutoConfig template file
You can create an AutoConfig template file of your own. This will enable you to develop custom applications that AutoConfig configures and maintains.
Perform the following tasks in the order listed:
Define a product_top
Use the Oracle Applications Manager Context Editor to add your custom product_top to the context file. Refer to the Help pages available on your Oracle Applications Manager site. The relevant information for adding custom context variables is located in the "System Configuration" -> "AutoConfig" -> "Custom Parameters" section. Choose the variable type "PROD_TOP" when adding the product_top variable. The default value for the product_top variable must be set to '%s_at%/<product name>/11.5.0'.
For example, define the product top for the product 'my' as follows:
OA_VAR = c_mytop
Default Value = %s_at%/my/11.5.0
Title = My Product top
Description = This is my product top
OA_TYPE = PROD_TOP
Note: You must have Oracle Applications Manager (OAM) H or higher installed to manage custom variables. Refer to Oracle Applications Manager 11i Availability for instructions on installing OAM.
Create the customer owned AutoConfig template directory
Create the directory where your AutoConfig template files will reside. Execute the following command as the applmgr user:
On UNIX
mkdir <c_mytop>/admin/template
On Windows
mkdir <c_mytop>\admin\template
Develop the customer owned AutoConfig template file
Create the AutoConfig template file in the AutoConfig template directory. There are no file name restrictions, and the new template file can be of any type that can store text, such as text file, Shell script, Perl script, or SQL script. To use AutoConfig instantiation, enter your context variables in the file. When AutoConfig runs, it replaces the context variables with the associated values from the context file.
For example create and edit the file
<c_mytop>/admin/template/myTemplate.txt
Create the customer owned AutoConfig driver directory
Create the directory where your AutoConfig driver file will reside. Execute the following command as the applmgr user:
On UNIX
mkdir <c_mytop>/admin/driver
On Windows
mkdir <c_mytop>\admin\driver
Develop the customer owned AutoConfig driver file
The AutoConfig driver file instructs AutoConfig where to place the generated configuration file. Place the driver file in the AutoConfig driver directory. The name for the driver file is defined as: <product>tmpl.drv. For this example the driver file would be named:mytmpl.drv. Refer to Appendix: Specification for AutoConfig driver file syntax for information on the format of the driver file.
For example, to have AutoConfig instantiate the above example template file, the driver file would contain this line:
my admin/template myTemplate.txt INSTE8 <s_pt> myConfiguration.txt 660
This section discusses advanced features when using AutoConfig Customizations.
Debugging customizations
If problems arise with customizations that you implemented, it may be useful to run AutoConfig with the AutoConfig template files, ignoring custom template files. Execute the following command:
On UNIX
<AD_TOP>/bin/adconfig.sh -nocustom contextfile=<CONTEXT> \
appspass=<APPSpwd>
On Windows
<AD_TOP>\bin\adconfig.cmd -nocustom contextfile=<CONTEXT> \
appspass=<APPSpwd>
Preserving customizations After Updates
You must review your customizations whenever AD Patch delivers a new version of an AutoConfig template file for which you edited the corresponding custom template file. If the customizations are still required, copy the new version of the AutoConfig template file to the custom template directory, and edit the custom template file with your customizations.
AutoConfig checks that your custom template files are of the same versions as the AutoConfig template files, and will not run if it detects any version mismatch.
Reports
The report produced by the adtmplreport utility can:
List all customized files in an Oracle Applications instance
List all AutoConfig template files, their custom template files and their configuration files
Identify the name and location of the AutoConfig template file and the custom template file for a given configuration file
Identify the name and location of the configuration file for a given AutoConfig template file
The report utility is located at:
Tier
Application
Database
Location
<AD_TOP>/bin
<RDBMS ORACLE_HOME>/appsutil/bin
To list all files that you customized in an Oracle Applications system:
Platform
Unix
Windows
Command
adtmplreport.sh contextfile=<CONTEXT> listcustom
adtmplreport.cmd contextfile=<CONTEXT> listcustom
To list all configurations files, their AutoConfig template files and their custom template files:
Platform
Unix
Windows
Command
adtmplreport.sh contextfile=<CONTEXT>
adtmplreport.cmd contextfile=<CONTEXT>
To identify the configuration file for a given AutoConfig template file:
Platform
Unix
Windows
Command
adtmplreport.sh contextfile=<CONTEXT> template=<templatefilepath>
adtmplreport.cmd contextfile=<CONTEXT> template=<templatefilepath>
To identify the AutoConfig template and custom template file for a given configuration file:
Platform
Unix
Windows
Command
adtmplreport.sh contextfile=<CONTEXT> target=<configurationfile>
adtmplreport.cmd contextfile=<CONTEXT> target=<configurationfile>
This section discusses the limitations when using AutoConfig Customizations
Limitations with customizing tnsnames.ora,listener.ora and sqlnet.ora
When executing the AutoConfig tool on the application tier, it generates tnsnames.ora,
listener.ora and sqlnet.ora based on the information present in FND_NET_SERVICEStable. If there is a need to add custom parameters you must use the IFILE feature present in these configuration files. For eg, if there is a need to add TRACE_DIRECTORY in tnsnames.ora, you will have to add this in the file pointed to by the IFILE parameter instead of directly adding in tnsnames.ora .
customizing admk80ln_ux.sql or any other file involved in the generation of these files is not supported.
The content for AutoConfig driver files is well defined. Every file you want AutoConfig to instantiate needs an entry in the AutoConfig driver file. Entries consist of <TAB> or <SPACE> separated fields. The following table lists the fields and their contents.
For example, in the case of the driver file entry:
my admin/template myTemplate.txt INSTE8 <s_pt> myConfiguration.txt 660
AutoConfig would instantiate the template file <MY_TOP>/admin/template/myTemplate.txt and generate the configuration file myConfiguration.txt into the Portal directory (the Portal directory is instantiated from <s_pt>) with 660 (read and write for user and group) permission.