Architecture of E-Biz

This section describes the basics of E-Biz Architecture. Although there are a lot attached to the Oracle apps architecture, we will discuss the concepts that will help us in understanding the functionality better. Oracle E-Biz runs with three tier architecture. See Figure 1.1 – Architecture.

 (Figure 1.1 – Architecture)

Desktop Tier

This is the client facing or user facing interface. It runs HTML based Java applets to pop up forms and web based applications, for the user access. This tier accepts our log in authentication credentials and keeps them for further usage. So once logged in, we can use oracle applications as well as other tools embedded within. The Oracle forms are brought in with a Forms client applet which in turn is a collection of Java Archive files (JAR files). When we log in for the first time, the Forms client applet and frequently used JAR files are downloaded to our machine and cached. Later less frequently used JARs get downloaded based on necessity. 

Application Tier

This tier beholds all the servers that are responsible for the services we avail on the desktop tier. For an example, if something is queried from the database, then apart from the data, the appearance, the business logic etc are needed; these extra things other than the data are called Services. This is the tier where the servers will reside, and provide us the services. A basic application tier will comprise of: 

  • Web Server: Manages the web services, like HTTP requests, Java Controller, Servlet engines etc. In short it provides end to end handle on application appearance (except form based applications) and request-response management.
  • Form Server: Manages the form based application requests and the Form listener Servlets.
  • Concurrent Server: This is an innovative piece of architecture, where the application allows us to run programs that can process in the background without putting any pressure on the other transactional processes we are working on. For an example, we can just put in a request for a report and keep working on the application, without any interventions; as the report is being run by the concurrent manager, which is independent of the application server.
  • Admin Server: This one manages the applications data and patches. It records the patches installed in the system, along with the administration of application data.

Database Tier

The database tier contains the Oracle database server, which stores all the data maintained by Oracle Applications. In short, it is the database of the applications.

Technology Layer

There are a set of technology that are used across modules. These provide common features to all Oracle application products. These technologies are:

  • Oracle Applications DBA
  • Oracle Applications Object Library
  • Oracle Applications Utilities
  • Oracle Common Modules
  • Oracle Workflow
  • Oracle Alert
  • Oracle Applications Framework
  • Oracle XML Publisher

These are all standalone modules. We will learn about these in details, as and when we emanate through the chapters.

File Systems

There is a given pattern in which the files are stored in the servers. The pattern is nothing but a defined folder/directory structure, which is commonly known as the File System. The file systems have evolved along with the Oracle E-Biz. There had been significant changes to the File systems with the advent of R12 and we will discuss the file system based on R12. 

Database server

Talking about the Database server first, it contains stacks like Application stack and Technical stack. See Figure 1.2 – Database Server. And the stacks further contain different directories.
 (Figure 1.2 – Database Server)

DATA_TOP: This directory resides in ./apps_st/data. Here apps_st represents the application stack directory in the database server. It contains the database level data like, the system table space, data table space, Index Table space, database files, redo-log files etc.

ORACLE_HOME: This directory resides in ./apps_st/10.2.0. It is the Oracle Home for the 10g database being used in the application backend.

Application server

The application server holds the application elated data, and in the vein of database Server, it holds the application stack and the Technical stack. See Figure 1.3 – Application Server. The stacks further hold the sub directories.

 (Figure 1.3 – Application Server)

APPL_TOP: This is considered the Mother directory, as it stores the product directories within. Each product holds its own directory and this one lists them all.

If we go further down to the granular level in to APPL_TOP, we will find the directory containing the following subdirectories:

  • The product files and directories
  • The core technology files and directories
  • application environment files <*.env / *.cmd>
  • consolidated environment files <*.env / *.cmd>

The Product directories store information related to the Product. And are named based on the Product short name. For an example, the Prod directory for General Ledger will be called GL_TOP, as GL is the short name for General Ledger. Each product has a two-three lettered short code. The Product Top directory stores directories like admin, bin, forms, html, Java etc.

Under each product directory, there will be a directory for the version, like 12.0.0, 12.0.1, etc. For each version directory, there will be directories for each and every language the application is installed in. Like US, FR, GB etc. And under each language directory there will the following folders:

·         Bin: Stores the Control files and data Load files.

·         Data: Stores the data files used in the product.

·         Forms: Stores the fmb files.

·         Java: stores the Java class files and XML files.

·         Patch: Holds the different downloaded patches.

·         Publisher: Stores the XML Publisher template files

·         Reports: Stores the Oracle Report Files.

·         SQL: Stores all the database objects related to the Product.

COMN_TOP: This directory holds the technology layer products. The ones that are used across products (e.g. FND, WF)

ORACLE_HOME: Holds application technology stack tools components in application server.

JAVA_HOME: Holds application technology stacks Java components in application server.