This section describes Oracle Application Express, its architecture, and the environment for using the product. It also introduces you to concepts and terms used in this guide when discussing Oracle Application Express.
Oracle Application Express is a rapid web application development tool for the Oracle database. Using only a web browser and limited programming experience, you can develop professional applications that are both fast and secure. Thanks to built-in features such as user interface themes, navigational controls, form handlers, and flexible reports, Oracle Application Express accelerates the application development process.
From the end user's perspective, the deployed applications require only a browser and access to an Oracle database running Application Express.
Tip:To learn more about Oracle Application Express features, click Learn more... on the Workspace home page.
Oracle Application Express installs with your Oracle database and is composed of data in tables and PL/SQL code.
Whether you run the Oracle Application Express development environment or an application you built using Oracle Application Express, the process is the same. Your browser sends a URL request that is translated into the appropriate Oracle Application Express PL/SQL call. After the database processes the PL/SQL, the results are relayed back to your browser as HTML. This cycle happens each time you request or submit a page.
The application session state is managed in the database tables within Oracle Application Express. It does not use a dedicated database connection. Instead, each request is made through a separate database session, consuming minimal CPU resources.
Understanding Web Listener Options
In order to run, Oracle Application Express must have access to Oracle Application Express Listener, Oracle HTTP Server and
mod_plsql, or the embedded PL/SQL gateway.
About Oracle HTTP Server (Apache) and Oracle Application Express Listener
Oracle HTTP Server uses the
mod_plsql plug-in to communicate with the Oracle Application Express engine within the Oracle database. Oracle Application Express Listener communicates directly with the Oracle Application Express engine, thus eliminating the need for the
Both Oracle HTTP Server and the Oracle Application Express Listener function as communication brokers between the web server and the Oracle Application Express objects in the Oracle database. More specifically, they map browser requests into database stored procedure calls over an
Oracle Net Services connection. The following graphic illustrates the Oracle Application Express architecture using Oracle HTTP Server and
This three-tier architecture has the following components:
A web browser
Oracle HTTP Server (Apache) with mod_plsql or Oracle Application Express Listener
An Oracle database containing Oracle Application Express
Advantages of either Oracle HTTP Server (Apache) with
mod_plsql or Oracle Application Express Listener include:
Separation of database tier from mid-tier
Appropriate for Oracle Real Application Clusters (Oracle RAC) environments
Versions before Oracle Database 11g Release 1 require Oracle Application Express Listener or Oracle HTTP Server (Apache) with
About the Embedded PL/SQL Gateway
The embedded PL/SQL gateway installs with the Oracle database. It provides the Oracle database with both a web server and the necessary infrastructure to create dynamic applications. The embedded PL/SQL gateway runs in the Oracle XML DB Protocol Server in the Oracle database and includes the core features of
mod_plsql. The following graphic illustrates the Oracle Application Express architecture using the embedded PL/SQL gateway.
This two-tier architecture has the following components:
A web browser
An Oracle database containing the embedded PL/SQL gateway and Oracle Application Express
Advantages of the embedded PL/SQL gateway:
Ease of configuration
Included in the database
No separate server installation
See Also:"Security Considerations When Using the Embedded PL/SQL Gateway" in Oracle Application Express Application Builder User's Guide
About the Application Express Engine
The Application Express engine renders and processes pages. It also performs these tasks:
Session state management
Page flow control
Oracle Application Express enables a single Oracle database to become a shared workgroup database service. Multiple users can access it using a web browser without installing additional software.
The area where you develop applications is called a workspace. A workspace is a virtual private database that enables multiple users to work within the same Oracle Application Express installation while keeping their objects, data, and applications private.
In a typical development environment, you might create a single workspace for all your developers to share. However, you can also create dedicated workspaces for specific developers or projects. Creating a dedicated workspace limits access to the workspace objects to only those users associated with the workspace.
The following graphic shows the relationships between users and developers, workspaces, and database schemas.
When you create a workspace, you associate it with a new or existing schema. A schema is a logical container for database objects such as tables, views, and stored procedures. A single schema can be associated with one or more workspaces.
When setting up Application Express users at a large organization, you assign roles and privileges to specific users. The roles within Oracle Application Express include the following:
End users are application users without any access to development or administrative capabilities.
Developers are users who create and edit applications and modify database objects. Developers can have their own workspaces or share a workspace.
Workspace administrators are developers who perform administrator tasks specific to a workspace such as managing user accounts, monitoring workspace activity, and viewing log files.
Instance administrators are superusers who manage an entire hosted instance using the Application Express Administration Services application.
The following graphic shows multiple users with various roles accessing the Oracle Application Express development environment, Application Express Administration Services, and the published applications.
For this guide, you must have the privileges usually associated with three roles: Instance Administrator, Workspace Administrator, and Developer. The following graphic shows an Oracle Application Express instance with a single user.
In "Building Your Application", you create a simple Human Resources (HR) application for a fictitious company called AnyCo Corp. The application manages departmental and employee information stored in the departments and employees tables that you create. The tutorial shows you how to build the application, modify it, and then preview it.