1.4 Choosing a Web Listener

In order to run, Oracle Application Express must have access to a Web listener.

1.4.1 About Choosing a Web Listener

You can choose any one of the three Web listeners - Oracle REST Data Services, Oracle HTTP Server, and Embedded PL/SQL gateway.

Oracle Application Express uses a simple architecture where pages are dynamically generated using metadata stored within the Oracle Database. There is no code generation or file based compilation. Once fully installed, a Uniform Resource Locator (URL) is defined for both developers and end users to access Oracle Application Express. Users require only a Web browser and the required URL. No additional client software is required.

The Web listener functions as a communications broker between the Web browser and the Oracle Application Express objects in the Oracle database by mapping browser requests into database stored procedure calls. You have a choice of three Web listeners.

  • Oracle REST Data Services (formerly Oracle Application Express Listener).

  • Oracle HTTP Server.

  • Embedded PL/SQL gateway.

1.4.2 About Oracle REST Data Services

Oracle REST Data Services (formerly Oracle Application Express Listener) is Java-based, can be installed into any supported J2EE compliant Web Server, and is the preferred option for use with Oracle Application Express.

It is a free tool that is fully supported against Oracle WebLogic Server, Oracle Glassfish Server, and Apache Tomcat. Oracle REST Data Services is part of the reference architecture used to operate the Oracle Database Cloud Service.

Note:

There are licensing costs associated with Oracle WebLogic Server and Oracle Glassfish Enterprise edition. Oracle Glassfish Community edition is a no cost option.

Using Oracle REST Data Services creates an architecture which consists of:

  • A web browser

  • Oracle REST Data Services

  • Oracle Database containing Oracle Application Express

The major advantage of this architecture is the separation of the mid-tier and the database tier.

Tip:

This architecture is appropriate for Oracle Real Application Clusters (Oracle RAC) environments.

See Also:

1.4.3 About Oracle HTTP Server with mod_plsql

The Oracle HTTP Server (Apache) with mod_plsql can be placed on the same physical machine as the database, or on a separate physical machine.

Note:

mod_plsql is deprecated as of Oracle HTTP Server 12c (12.1.3). For more information, see My Oracle Support Note 1576588.1. Oracle recommends using Oracle REST Data Services instead.

If Oracle HTTP Server is installed on the same physical machine as the database then the Oracle HTTP Server is included as part of the limited-use license included with the Oracle Database license. Otherwise, you must obtain a separate Oracle HTTP Server license.

Using Oracle HTTP Server (Apache) with mod_plsql creates an architecture which consists of:

  • a Web browser

  • Oracle HTTP Server with mod_plsql

  • Oracle Database containing Oracle Application Express

This architecture separates the mid-tier and the database tier.

Tip:

This architecture is appropriate for Oracle Real Application Clusters (Oracle RAC) environments.

Where Images Are Stored When Using Oracle HTTP Server

In an Oracle HTTP Server or Oracle Application Server configuration, images are stored on the file system in the location referenced by the alias /i/. If you are upgrading Oracle Application Express from a prior release, you can locate the images directory on the file system, by reviewing the following files and searching for the text alias /i/:

  • Oracle HTTP Server distributed Oracle9i Release 2—see the httpd.conf file.

  • Oracle Application Server 10g—see the marvel.conf or dads.conf files.

  • Oracle HTTP Server distributed with Oracle Database 11g or 12c —see the marvel.conf or dads.conf files.

Specific examples for locating the text alias /i/ can be found in Copying the Images Directory.

1.4.4 Comparing Web Listener Options

Learn about comparing Web listener options for Oracle Application Express.

Table 1-3 compares Web Listener options for Oracle Application Express.

Table 1-3 Web Listener Comparisons

Capabilities Oracle REST Data Services Oracle HTTP Server with mod_plsql Embedded PL/SQL Gateway

Image location

File system

File system

Within the database

Configuration options

GUI interface (Release 2.0.3 or later); Administration pages

Database Access Descriptor (DAD)

Database initialization parameters

Connection Pool settings

JDBC parameters

Min/MaxSpareServers; MaxClients

SHARED_SERVERS; MAX_SHARED_SERVERS

Emit RESTful Web Services

Yes (Release 2.0.3 or later)

No

No

Support multi-databases

Yes, including Oracle RAC

Yes, including Oracle RAC

No

Virus scan files

Yes, with integration of ICAP server

No

No

PDF printing

Yes, included FOP support

No

No

Environment recommendations

All

All

Development only

1.4.5 About Security Considerations When Using the Embedded PL/SQL Gateway

Learn about security considerations when using the embedded PL/SQL gateway.

The embedded PL/SQL gateway runs in the database as part of the Oracle XML DB HTTP listener. The Oracle XML DB HTTP listener and embedded PL/SQL gateway provides the equivalent core features of Oracle HTTP Server and mod_plsql. Because the HTTP Listener runs in the same database where Oracle Application Express is installed, it is not possible to separate the HTTP listener from the database. For this reason, Oracle does not recommend the Embedded PL/SQL Gateway for applications that run on the Internet. Additionally, the embedded PL/SQL gateway does not provide the same flexibility of configuration and detailed logging as Oracle REST Data Services or Oracle HTTP Server.

1.4.6 About the Embedded PL/SQL Gateway

Oracle XML DB Protocol Server with the embedded PL/SQL gateway installs with Oracle Database.

Embedded PL/SQL gateway provides the Oracle database with a Web server and also 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 embedded PL/SQL gateway consists of a simple two tier architecture: a Web browser and an Oracle database containing the embedded PL/SQL gateway and Oracle Application Express.

Advantages of the embedded PL/SQL gateway include:

  • Ease of configuration

  • Included in the database

  • No separate server installation

Where Images Are Stored When Using the Embedded PL/SQL Gateway

When running Oracle Application Express with the Embedded PL/SQL Gateway, images are stored directly in the database within the Oracle XML DB repository. You can access images by using the WebDAV feature of Oracle XML DB or by using FTP.

1.4.7 Selecting a Web Listener in an Oracle RAC Environment

Learn about selecting a Web listener in an Oracle RAC environment.

When running Oracle Application Express in an Oracle Real Application Clusters (Oracle RAC) environment, Oracle recommends that you use Oracle REST Data Services . Oracle REST Data Services permit you to specify a connection in the service name format, so that one HTTP Server can access all nodes.