Saturday, 10 August 2013

What's Oracle APEX all about?

In this blog I shall try and introduce you to the basics of Oracle Application Express (APEX) and some of the background to the product. 

What is APEX?

Oracle Application Express (also called APEX and formally called HTMLDB) is a web-based development environment for primarily building dynamic web-based database applications.  It provides developers with the ability to create simple and complex web applications. These can consist of the main components required for web systems, for example forms, reports, menus, tabs, breadcrumbs etc.  It also allows the developer to execute SQL and the PL/SQL statements necessary to define database objects.  For example we can create tables, views, indexes etc. from within the Oracle APEX product in the same way as we would be able to using Oracle SQL*Plus or Oracle’s SQL Developer. 

One of the key features of APEX is that all development takes place in a web browser such as Internet Explorer, Firefox, etc.  Therefore Oracle APEX is unlike other Oracle development tools (e.g. Oracle Forms) in that no additional software requires to be installed on the developer’s PC.  Also, when applications are deployed to end users machines they require no additional software, as the application is launched from within a browser.

History of APEX

Oracle APEX (APEX) was introduced as an Oracle Product in 2004.  Since then there have been a number of main releases of the product:
Oracle HTMLDB version 1.5
Oracle HTMLDB version 1.6
Oracle HTMLDB/APEX version 2 (released September 2005)
Oracle Application Express 2.2 (released August 2006)
Oracle Application Express 3 (released March 2007)
Oracle Application Express 3.1 (released February 2008)
Oracle Application Express 3.2 (released February 2009)
Oracle Application Express 4 (released September 2010)
Oracle Application Express 4.1 (released August 2011)

APEX is currently included with the 11g Database.  However it is possible to download the most recent standalone version of APEX from the Oracle TechnologyNetwork.  You will need  an Oracle Database or above to use APEX version up to and including 3.2. To run version 4 or higher then you will need or higher.

At the time of blogging there is no additional license charge for APEX as it is included with the Oracle Database license.  

Basic APEX Architecture

In addition to an Oracle Database the Oracle Application Express architecture requires some form of Web server to proxy requests between a Web browser and the Oracle Application Express engine. There are three options for configuring the web server:

1.   Oracle HTTP Server with mod_plsql
2.   Embedded PL/SQL Gateway (EPG)
3.   Oracle Application Express Listener.

Oracle HTTP Server
The Oracle HTTP Server (Oracles web server) is based on the Apache web server.  Oracle introduced a module to the Oracle HTTP Server called mod_plsql which allows requests to execute PL/SQL code to be passed via a URL to the Oracle database for processing.

Embedded P/SQL Gateway
Starting with Oracle Database 10gXE and more recently 11g, you can use the embedded PL/SQL gateway. The embedded PL/SQL gateway is installed with Oracle Database 11g and does not require the Oracle HTTP Server. It provides the Oracle Database with a web server and the necessary infrastructure to create dynamic applications. The embedded PL/SQL gateway runs in the Oracle XML DB HTTP Server in the Oracle Database. It includes the core features of mod_plsql.

Oracle Application Express Listener
Oracle Application Express Listener is a Java-based interface that communicates directly with the APEX engine, thus eliminating the need for mod_plsql. It can be installed in a J2EE application server or can be installed in stand-alone mode. The use of the Oracle APEX listener simplifies the deployment process because there is no Oracle home required as connectivity is provided using an embedded JDBC driver. The J2EE implementation offers increased functionality including a web based configuration, enhanced security, and file caching. The APEX Listener also provides flexibility by supporting deployments using Oracle Web Logic Server (WLS), Oracle Glassfish Server and OC4J.

No comments:

Post a Comment