Oracle Application Express
File:Oracle Application Express.png | |
Developer(s) | Oracle Corporation |
---|---|
Stable release | 3.2
/ March 2, 2009 |
Preview release | 4.0 Early Adopter
/ December 22, 2009 |
Operating system | Linux and Windows |
Type | Oracle database development environment |
License | Oracle Technical Network License (Proprietary) |
Website | http://apex.oracle.com |
Oracle Application Express (Oracle APEX, previously named Oracle HTML DB) is a freeware software development environment based on the Oracle database.[1] It allows a very fast development cycle to be achieved to create web based applications. It can be used for departmental-style applications with a dozen users, but can also scale up to handle thousands of users. The framework itself adds as little as 0.04 second of overhead to each page request;[2] how well an application scales is primarily based on the efficiency of the SQL queries used by the application developer.
Background
Oracle Application Express can be installed in an Oracle 9.2 or higher database, and starting from Oracle 11g it will be preinstalled along with the database.
In January 2006 Oracle renamed HTML DB to "Oracle Application Express". Version 2.1 of APEX was bundled with the free Oracle Express Edition (XE) database.
In 2007 Oracle released APEX 3.0. This third major version features several new features, notably PDF Printing and Flash charting. APEX 3.0.1 was released in July 2007, and this version can also be installed into an Oracle XE database.
In Spring 2008 Oracle released APEX 3.1. This included a new major feature known as Interactive Reporting, which enables end-users to extensively customize a report without programmer intervention, using techniques such as filtering, sorting, group-by, choosing displayed columns, etc. The user can even save multiple versions of their customized reports. The programmer can limit which features are enabled. With this power comes a loss of programmer control over the layout of the report.
Historically speaking, Application Express has gone through many name changes since its inception in 2000. A reasonably complete history of the names includes:
- Flows
- Oracle Platform
- Project Marvel
- HTML DB
- Application Express (APEX)
One popular misconception is that it's a new version of Web DB. Mike Hichwa created Web DB, a successful web front-end for Oracle, but the development of Web DB started to move in a direction that diverged from Mike's vision. When tasked with building an internal web calendar, Mike enlisted the help of Joel Kallman and started "Flows". They co-developed the Web Calendar and Flows for several years, adding features to Flows as they needed them to develop the calendar. In the earliest days of Flows, there was no front-end for it, so all changes to an application were made in SQL*Plus via inserts, updates and deletes. In some ways APEX is an evolution of Web DB, but it was really a fresh start with new code and no upgrade path.
One of the most well known applications developed in Application Express is the AskTom application developed by Thomas Kyte. Oracle's Metalink support site had been running on APEX, but was replaced with a Flash version in September 2008 [3]. Oracle's online store also runs on APEX.
Pros
- Fast development.
- 100% web based
- Ready to use components
- Professional looking
- Easy to create mock-ups
- Easy to deploy (end user just needs to open a URL to access an APEX application)
- Easy to scale
- All processing, validations are done in server side
- Strong and supportive user community (especially Oracle APEX forum)
- Basic support for group development
- Free hosting of demo applications provided by Oracle (see link below)
- Individual components of an application can be retrieved or identified using SQL, faciliating customized reports
Cons
- APEX applications are created using Oracle's own tools and only can be hosted in an Oracle database, making an implementer susceptible to vendor lock-in.
- While applications are exportable to a script form that can be version controlled, the underlying PL/SQL code is not intended to be human-readable or writable, meaning that it is not easy to compare source code revisions.
- As an application framework, it can be difficult to customize an application outside of a set of expectations about how an APEX application is supposed to operate.
- Large installation (V3.1.2 is 532Mb)
- Limited debugging facilities.
- Very few webhosts offer APEX (Oracle Database) on their hosting service package (most of them offer PHP + MySQL or ASP + Microsoft SQL Server). As a result, APEX applications are limited in their choice of webhosts.
References
- ^ http://www.oracle.com/database/index.html
- ^ "Oracle Application Express Best Practices" (PDF), Oracle, January 2006, p. 17
- ^ Introducing My Oracle Support
Bibliography
- Geller, Arie; Lyon, Matthew (June 1, 2010), Oracle Application Express 3.2 – The Essentials and More (1st ed.), Packt Publishing, p. 520, ISBN 1847194524
- Knox, David; Gaetjen, Scott; Jahangir, Hamza; Muth, Tyler; Sack, Patrick; Wark, Richard; Wise, Bryan (September 28, 2009), Applied Oracle Security: Developing Secure Database and Middleware Environments (1st ed.), McGraw-Hill Osborne Media, p. 640, ISBN 0071613706
- van den Bos, Douwe Pieter (July 29, 2009), Oracle Application Express Forms Converter (1st ed.), Packt Publishing, p. 172, ISBN 1847197760
- Greenwald, Rick (December 22, 2008), Beginning Oracle Application Express (1st ed.), Wrox, p. 384, ISBN 0470388374
- Scott, John; Spendolini, Scott (September 16, 2008), Pro Oracle Application Express (1st ed.), Apress, p. 700, ISBN 159059827X
See also
External links
- Oracle Application Express
- Oracle Corporation
- sourceforge website for Oracle Application Express
- unOfficial Apex (Oracle Application Express) Wiki
- Blogs related to APEX
- Apex user forum
- APEX application host
- Oracle Application Express Examples
- Oracle APEX Community in Quebec(Canada)
- APEX Framework
- ApexLib
- APEX Blog Aggregator