An Oracle E-Business Suite Release 12 system utilizes components from many Oracle products. These product files are stored below a number of key top-level directories on the database and application server machines.
Note: No Oracle E-Business Suite components are installed on desktop client machines, although JAR files and their supporting utilities are downloaded as required.
Depending on how you chose to install Oracle E-Business Suite, these product directories may be located on a single machine (the simplest case) or on multiple machines (the most common type of deployment). Operating system environment settings indicate the location of the various files in the file systems of the database and application tier machines. This chapter discusses the association between these environment settings and the corresponding files and directories.
Figure 2-1 Top-Level Oracle E-Business Suite Directory Structure
The db/apps_st/data directory is located on the database node machine, and contains the system tablespaces, redo log files, data tablespaces, index tablespaces, and database files
The db/tech_st/11.1.0 directory is located on the database node machine, and contains the ORACLE_HOME for the Oracle 11g database
The apps/apps_st/appl (APPL_TOP) directory contains the product directories and files for Oracle E-Business Suite
The apps/apps_st/comn (COMMON_TOP) directory contains Java classes, HTML pages, and other files and directories used by multiple products
The apps/tech_st/10.1.2 directory contains the ORACLE_HOME used for the Oracle E-Business Suite technology stack tools components
The apps/tech_st/10.1.3 directory contains the ORACLE_HOME used for the Oracle E-Business Suite technology stack Java components
Oracle E-Business Suite makes extensive use of environment settings to locate executable programs and other files essential to Oracle E-Business Suite operation. These environment settings are defined when you install Oracle E-Business Suite. Many of the settings are defined by information you provide when running Rapid Install, while others have the same values in all installations.
The environment settings and their associated values are stored in environment files, which have a .env suffix on UNIX (.cmd on Windows). Environment files and settings are discussed in more detail later in this chapter.
Oracle E-Business Suite Release 12 introduces the concept of a top-level directory for an Oracle E-Business Suite instance. This directory is referred to as the Instance Home, and denoted by the environment variable $INST_TOP.
Using an Instance Home provides the ability to share application and technology stack code among multiple instances, for example a development instance and a test instance. Other benefits include support for read-only file systems and centralization of log files, both of which are discussed further below.
The basic structure of the instance home is: <APPS_BASE>/inst/apps/<context_name>, where APPS_BASE (which does not have or need a corresponding environment variable) is the top level of the Oracle E-Business Suite installation, and <context_name> is the highest level at which the applications context exists. For example, the setting of $INST_TOP might be <diskresource>/applmgr/inst/apps/testsys2, where testsys2 is the context name.
All configuration files created by AutoConfig are stored under the Instance Home. This facilitates use of a shared application tier file system, as described later in this chapter.
Figure 2-2 Instance Top
A key benefit of moving to the new Instance Home model is that as AutoConfig no longer writes to the APPL_TOP or ORACLE_HOME directories, both of these can be made into read-only file systems if required. In previous Oracle E-Business Suite releases, the adpatch utility wrote to $APPL_TOP/admin on an administration (patching) node. Under the new model, $APPL_CONFIG_HOME/admin is used instead. $APPL_CONFIG_HOME will equate to a value such as /u01/oracle/VIS/apps/apps_st/appl.
Note: In a shared file system environment, Oracle recommends that the INST_TOP should be located on a local disk and not on a shared resource such as NFS, because of possible issues storing log files on shared resources.
Another advantage of employing the concept of an Instance Home is that log files can be stored centrally for an instance, and therefore managed more easily.
Important: This is particularly significant from a security perspective, as log files may contain sensitive data that should not be accessible to general users.
The following diagram shows the directory structure used for log files in Release 12, with some of the subdirectories used to categorize the log files:
Figure 2-3 Log Files
The db/apps_st/data directory stores the different types of file used by the Oracle database. Rapid Install places the system, data, and index files in directories below several file system mount points on the database machine. You can specify these mount points during installation.
Oracle E-Business Suite supports employing an Oracle E-Business Suite database running out of one ORACLE_HOME, while running other Oracle E-Business Suite components out of additional ORACLE_HOMEs. This multiple ORACLE_HOMEs configuration allows Oracle E-Business Suite to utilize new features of the Oracle Database and associated technologies in the most flexible manner.
Release 12 utilizes an Oracle Database 11g ORACLE_HOME, (Oracle E-Business Suite database home) whose files are located under the db directory. These files are needed for running and maintaining the Oracle E-Business Suite database.
Note: Oracle E-Business Suite is always certified with database server patchsets (minor maintenance releases).
Figure 2-4 COMMON_TOP Directory Structure
The admin directory
The admin directory, under the COMMON_TOP directory, is the default location for the concurrent manager log and output directories. When the concurrent managers run Oracle E-Business Suite reports, they write the log files and temporary files to the log subdirectory of the admin directory, and the output files to the out subdirectory of the admin directory.
You can change the location the concurrent managers write these files to, so that, for example, the log and output files are written to directories in each <PROD>_TOP directory. This may be more desirable in terms of disk space management, or the need to avoid a possible performance bottleneck on a system that has a high concurrent processing throughput.
Note: For further details, see Concurrent Processing Server in Chapter 1 of this book, and Chapters 6, 7 and 8 of Oracle E-Business Suite System Administrator's Guide - Configuration.
The install subdirectory of the admin directory contains scripts and log files used by Rapid Install. The scripts subdirectory of admin contains scripts used to start and stop services such as listeners and concurrent managers.
The html directory
The OA_HTML environment setting points to the html directory. The Oracle E-Business Suite HTML-based sign-on screen and Oracle HTML-based Applications HTML files are installed here. The html directory also contains other files used by the HTML-based products, such as JavaServer Page (JSP) files, Java scripts, XML files, and style sheets. Typically, the path will look like: <diskresource>/applmgr/apps/apps_st/comn/webapps/oacore/html.
Note: The META-INF and WEB-INF subdirectories were introduced in Release 12 to meet J2EE specifications.
The java directory
Release 12 introduces some significant changes to the locations in which the various types of Java files are stored. Rapid Install installs all Oracle E-Business Suite class files in the COMMON_TOP/classes directory, pointed to by the $JAVA_TOP environment variable. Zip and jar files are installed in the $COMMON_TOP/java/lib directory, pointed to by the $AF_JLIB environment variable (introduced with Release 12). The top-level Java directory, $COMMON_TOP/java, is pointed to by the $JAVA_BASE environment variable.
The util directory
The util directory contains the third-party utilities licensed to ship with Oracle E-Business Suite. These include, for example, the Java Runtime Environment (JRE), Java Development Kit (JDK), and the Zip utility.
Oracle E-Business Suite files are stored in the <dbname>APPL directory, which is generally known as the APPL_TOP directory.
The APPL_TOP directory contains:
The core technology files and directories.
The product files and directories (for all products).
Rapid Install creates a directory tree for every Oracle E-Business Suite product in this APPL_TOP directory, whether licensed or not.
Warning: Regardless of registration status, all Oracle E-Business Suite products are installed in the database and the file system. Do not attempt to remove files for any unregistered products.
Rapid Install installs a new APPL_TOP directory when you upgrade. Rapid Install does not delete any existing product files from earlier releases, but unloads new product files into a new apps/apps_st/appl directory tree.
Each APPL_TOP directory is associated with a single Oracle E-Business Suite database. If you install both a Vision Demo system and a test system, Rapid Install will lay down two file systems, one for each of these Oracle E-Business Suite systems.
Each product has its own subdirectory under APPL_TOP. The subdirectories are named in accordance with the product's standard abbreviation, such as gl for Oracle General Ledger. Within each product directory is a subdirectory that is named using the base Oracle E-Business Suite release number, such as 12.0.0 for the initial Release 12. This directory contains the various subdirectories for the product files.
For example, if APPL_TOP=/d01/oracle/prodapps, then the value contained in the AD_TOP environment variable is /d01/oracle/prodapps/ad/12.0.0, and the AD_TOP environment variable points to the <APPL_TOP>/ad/12.0.0 directory.
For the same APPL_TOP, the value of AU_TOP is /d01/oracle/prodapps/au/12.0.0, and the AU_TOP environment variable points to the <APPL_TOP>/au/12.0.0 directory. The same principle applies to all directories, apart for the admin directory.
Each <PROD>_TOP directory, such as <APPL_TOP>/gl/12.0.0, contains subdirectories for product files. Product files include forms files, reports files, and files used to upgrade the database. To display data entry forms for Oracle General Ledger, for example, Oracle E-Business Suite accesses files in the forms subdirectory under the 12.0.0 directory.
Figure 2-6 APPL_TOP Directory Structure
Within each <PROD>_TOP directory, the product's files are grouped into subdirectories according to file type and function. The next figure expands the inset to show the full directory structure for gl.
Figure 2-7 Detail of gl Directory Structure
The following table summarizes product subdirectories and the types of files each one may contain.
Note: Not all products use all the subdirectories listed in this table.
|admin||The <PROD>_TOP/admin directory contains product-specific files used to upgrade each product. This is in distinction to the <APPL_TOP>/admin directory, which contains upgrade-related files for all products.|
|driver||Contains driver files (.drv files) used in upgrading.|
|import||Contains DataMerge files used to upgrade seed data.|
|odf||Contains object description files (.odf files) used to create tables and other database objects.|
|sql||Contains SQL*Plus scripts used to upgrade data, and .pkh, .pkb, and .pls scripts to create PL/SQL stored procedures.|
|bin||Contains concurrent programs, other C language programs and shell scripts for each product.|
|forms||Contains Oracle Forms generated runtime (.fmx) files (Oracle Forms form files).|
|help||Contains the online help source files. Within this directory are subdirectories for each language installed.|
|include||Contains C language header (.h) files that my be linked with files in the lib directory. Not all products require this directory.|
|java||Contains JAR files (Java Archive files) and Java dependency files. Copies of JAR files are also located in the $AF_JLIB directory.|
|lib||Contains files used to relink concurrent programs with the Oracle server libraries. These files include:
|log and out||Contains output files for concurrent programs:
Note that log and out subdirectories under a product directory are not used if you choose to set up a common directory for log and output files (FND_TOP is the only exception to this).
|media||Contains .gif files used in the display of text and graphics on the desktop client.|
|mesg||Concurrent programs also print messages in the log and output files. This directory contains the .msb files (binary message files used at runtime), and language-specific message files (such as a US.msb file for American English and a D.msb file for German). The files contain the forms messages that are displayed at the bottom of the screen or in popup windows.|
|patch||Updates to the data or data model utilize this directory to store the patch files.|
|reports||Contains Oracle Reports platform-specific rdf binary report files for each product. Reports for each language are stored in subdirectories of the reports directory.|
|resource||Contains .pll files (PL/SQL library files for Oracle Forms), which, like the plsql directory files, are later copied to AU_TOP.|
|sql||Contains .sql files (SQL*Plus scripts) for concurrent processing.|
When you install Oracle E-Business Suite in a language other than American English, each product tree includes directories that use the relevant NLS language code. These directories hold translated data, forms, and message files. For example, the language directory named D designates German. The data loader files in the D subdirectory of the admin directory contain the German translation of the product seed data.
The US subdirectory in the forms directory contains Oracle Forms forms in American English. The D directory in the forms directory contains the same forms, translated into German. However, the mesg directory contains message files in both American English and German.
Note: For further details, see the Oracle Globalization Support Guide.
The admin directory
This directory and its subdirectories contain files and scripts used by the AD utilities during upgrade and maintenance processes.
These files and scripts include:
Scripts run during the upgrade
<SID>/log and <SID>/out directories for upgrade, log, and output files respectively
A <SID>/restart directory where AD programs create restart files
The ad (Applications DBA) directory
This directory and its subdirectories contain installation and maintenance utilities, including:
This directory and its subdirectories contain product files that are consolidated in a single location for optimal processing. These files include:
PL/SQL libraries used by Oracle Forms, in the resource subdirectory
Oracle Forms source files, in the forms subdirectory
A copy of all Java files used when regenerating the desktop client JAR files, in the java subdirectory
Certain reports needed by products such as Discoverer, in the reports subdirectory
The fnd (Application Object Library) directory
This directory and its subdirectories contain the scripts and programs that are used as the foundation for all Oracle E-Business Suite products to build data dictionaries, forms and C object libraries.
A traditional multi-node installation of Release 11i required each application tier to maintain its own file system, consisting of the APPL_TOP file system (APPL_TOP, COMMON_TOP, and a few related directories) and the application tier technology stack file system (8.0.6 ORACLE_HOME and iAS ORACLE_HOME). Subsequently, this was modified to allow the APPL_TOP to be shared across machines, and later to enable sharing of the entire application tier file system.
Continuing this strategy, Rapid Install for Release 12 creates a system that shares not only the APPL_TOP and COMMON_TOP file systems, but the application node technology stack file system as well. Rapid Install sets up this configuration as the default for nodes that are running the same operating system. These files make up the application tier file system, and can be shared across multiple application tier nodes (provided they are running the same operating system).
Note: A shared file system configuration is currently not supported on application tier server nodes running Windows.
With a shared application tier file system, all application tier files are installed on a single shared disk resource that is mounted from each application tier node. Any application tier node can then be used to provide standard services, such a serving forms or Web pages, or concurrent processing.
Figure 2-8 Shared Application Tier File System
As well as reducing disk space needed, there are several other benefits of a shared application tier configuration:
Most administration, patching, and maintenance tasks need be performed only once, on a single application tier node
Changes made to the shared file system are immediately accessible on all application tier nodes
Distributes processing tasks to run in parallel on multiple nodes (Distributed AD)
Reduces overall disk requirements
Makes adding additional application tier nodes easier
Capabilities for sharing the application tier file system were extended further in Release 12.0.4, which introduced the option of sharing an existing Oracle E-Business Release 12 file system with another database instance. An application tier file system installed and configured in this way can be used to access two (or more) database instances.
Restrictions on this are:
All database instances must be patched to the same level.
Only the application tier file system can be shared, not the database tier file system.
Note: For further details of features, options, and implementation steps, see My Oracle Support Knowledge Document 384248.1, Sharing the Application Tier File System in Oracle E-Business Suite Release 12.
For details of shared application tier file system usage in the context of high availability, see Chapter 9.
The location of these environment files is shown in the following table:
|<CONTEXT_NAME>.env or CONTEXT_NAME>.cmd||10.2.0.2 ORACLE_HOME||db/tech_st/10.2.0||Oracle Server Enterprise Edition|
|<CONTEXT_NAME>.env or <CONTEXT_NAME>.cmd||OracleAS 10.1.2 ORACLE_HOME||inst/apps/<context>/ora/10.1.2||Oracle tools technology stack|
|<CONTEXT_NAME>.env or <CONTEXT_NAME>.cmd||OracleAS 10.1.3 ORACLE_HOME||inst/apps/<context>/ora/10.1.3||Java technology stack|
|<CONTEXT_NAME>.env or <CONTEXT_NAME>.cmd||APPL_TOP||apps/apps_st/appl||Applications|
|APPS<CONTEXT_NAME>.env or APPS<CONTEXT_NAME>.cmd||APPL_TOP||apps/apps_st/appl||Consolidated setup file|
On UNIX, Oracle E-Business Suite includes a consolidated environment file called APPS<CONTEXT_NAME>.env, which sets up both the Oracle E-Business Suite and Oracle technology stack environments. When you install Oracle E-Business Suite , Rapid Install creates this script in the APPL_TOP directory. Many of the parameters are specified during the install process.
On Windows, the equivalent consolidated environment file is called %APPL_TOP%\envshell<CONTEXT_NAME>.cmd. Running it creates a command window with the required environment settings for Oracle E-Business Suite. All subsequent operations on the APPL_TOP (for example, running adadmin or adpatch) must be carried out from this window.
The following table lists the key environment settings in APPS<CONTEXT_NAME>.env.
|APPLFENV||The name of the environment file, <CONTEXT_NAME>.env. If you rename the environment file, this parameter setting must be updated.|
|PLATFORM||The operating system in use. The value (for example, LINUX) should match the value in the APPL_TOP/admin/adpltfrm.txt file.|
|APPL_TOP||The top-level directory for this Oracle E-Business Suite installation.|
|ADMIN_SCRIPTS_HOME||Directory under $INST_TOP that Identifies the location of scripts such as adautocfg.sh, adpreclone.sh, adstrtal.sh, and adstpall.sh.|
|FNDNAM||The name of the ORACLE schema to which the System Administration responsibility connects. The default is APPS.|
|GWYUID||The public ORACLE username and password that grants access to the Oracle E-Business Suite initial sign-on form. The default is APPLSYSPUB/PUB.|
|FND_TOP||The path to the Application Object Library directory. For example, apps/apps_st/appl/fnd/12.0.0.|
|AU_TOP||The path to the Applications Utilities directory. For example, apps/apps_st/appl/au/12.0.0.|
|<PROD>_TOP||The path to a product's top directory. There is one entry for each Oracle E-Business Suite product.|
|PATH||Sets the directory search path, for example for FND_TOP and AD_TOP.|
|APPLDCP||Specifies whether distributed concurrent processing is being used. Distributed concurrent processing distributes processing load across multiple concurrent processing nodes.|
|APPCPNAM||Indicates whether the format of the concurrent manager log and output files follow 8.3 file name conventions (maximum of 8 characters to the left of the dot and 3 to the right; for example, alogfile.log). If this parameter is set to "REQID" (required), the concurrent manager uses file names that meet 8.3 naming requirements.|
|APPLCSF||Identifies the top level directory for concurrent manager log and output files if they are consolidated into a single directory across all products. For example, /inst/apps/<context>/logs/appl/conc.|
|APPLLOG||The subdirectory for concurrent manager log files. The default is log.|
|APPLOUT||The subdirectory for concurrent manager output files. The default is out.|
|APPLTMP||Identifies the directory for Oracle E-Business Suite temporary files. The default is $INST_TOP/tmp on UNIX.|
|APPLPTMP||Identifies the directory for temporary PL/SQL output files. The possible directory options must be listed in the init.ora parameter utl_file_dir.|
|INST_TOP||Identifies the top-level directory for this instance. For example, inst/apps/<context>. Introduced with Release 12.|
|NLS_LANG||The language, territory, and character set installed in the database. The default for a fresh install is "AMERICAN_AMERICA.US7ASCII".|
|NLS_DATE_FORMAT||The National Language Support date format. The default is "DD-MON-RR", for example 14-JUL-08.|
|NLS_NUMERIC_CHARACTERS||The National Language Support numeric separators. The default is ".," (period and comma).|
Oracle E-Business Suite products also create temporary PL/SQL output files used in concurrent processing. These files are written to a location on the database server node specified by the APPLPTMP environment setting. The APPLPTMP directory must be the same directory as specified by the utl_file_dir parameter in your database initialization file.
Some Oracle E-Business Suite utilities use your operating system's default temporary directory even if you define the environment settings listed in the previous paragraph. You should therefore ensure there is adequate free disk space in this directory, as well as in those denoted by APPLTMP and APPLPTMP. On a multi-node system, the directory defined by APPLPTMP does not need to exist on the application tier servers.
Note: The temporary files placed in the utl_file_dir directory can be secured against unauthorized access by ensuring that this directory has read and write access for the Oracle database account only.
Several other key environment files are used in an Oracle E-Business Suite system.
The adovars.env file
The adovars.env file, located in $APPL_TOP/admin, specifies the location of various files such as Java files, HTML files, and JRE (Java Runtime Environment) files. It is called from the main applications environment file, <CONTEXT_NAME>.env. The adovars.env file includes comments on the purpose and recommended setting of each variable. In a Release 12 environment, adovars.env is maintained by AutoConfig, and should not be edited manually.
The adovars.env file includes the following parameters:
|AF_JLIB||Indicates the directory to which all Java archive files are copied. For example, apps/apps_st/comn/java/lib. Introduced with Release 12.|
|JAVA_BASE||Indicates the top-level Java directory . For example, apps/apps_st/comn/java. Introduced with Release 12.|
|JAVA_TOP||Indicates the directory to which all Java class files are copied. For example, apps/apps_st/comn/java/classes. Definition has changed with Release 12.|
|OA_JAVA||Indicates the directory to which all Java archive files are copied. For example, apps/apps_st/comn/java/classes.|
|OA_JRE_TOP||Indicates the location where the JRE is installed. For example, /local/java/jdk1.5.0_08.|
|OAH_TOP||Defines the location to which HTML files are copied. For example, apps/apps_st/comn/webapps/oacore.|
|OAD_TOP||Defines the locations to which context-sensitive documentation files are copied. For example, apps/apps_st/comn.|
|LD_LIBRARY_PATH||Path used on many UNIX platforms to list the directories that are to be scanned for dynamic library files needed at runtime.|
|CLASSPATH||Lists the directories and zip files scanned for Java class files needed at runtime.|
AD utility programs perform a variety of database and file management tasks. These utilities need to know certain configuration information to run successfully. This configuration information is specified when Oracle E-Business Suite is installed, and subsequently stored in the adconfig.txt file in the <APPL_TOP>/admin directory. Once it has been created, this file is used by other Oracle E-Business Suite utilities.
Note: adconfig.txt is created with the APPL_TOP file system, and it shows the tiers that have been configured on a particular node. It is distinct from the config.txt file employed by Rapid Install.
This file sets additional environment variables used by the Application Object Library. For example, it sets APPLBIN as the name of the subdirectory where product executable programs and shell scripts are stored (bin). This file should not be modified: the default values are applicable for all customers. The file is located in the FND_TOP directory.
This file sets variables that let you link third-party software and your own custom-developed applications with Oracle E-Business Suite. In Release 12, this script is located in FND_TOP/usrxit, and is automatically called by fndenv.env. This allows you to compile and link custom Oracle Forms user exits and concurrent programs with Oracle E-Business Suite.