We find ourselves in exciting times these days as there are a whole lot of Oracle product updates planned in the near future. Not a big surprise when you realize Oracle OpenWorld 2012 is just a couple of weeks from us (30/09 – 04/10). However, they didn’t wait until then to update/patch SQL Developer and SQL Developer Data Modeler. Both tools are frequently used in conjunction with APEX development.

This article is intended to discuss some of the newest major features in the upcoming Application Express 4.2 release. We’ll get down to that in a moment. I just want to drop a quick note on the recent developments of the increasingly popular APEX Listener. Oracle has recently made publicly available an early adopter version of the soon-to-be-released APEX Listener 2.0. You should definitely have a look at the changes that have been made in this version compared to the current production version 1.1.4. Dimitri Gielis wrote a nice article discussing this matter. It’s also interesting to note that the APEX 4.2 early adopter 2 instance was switched from OHS/mod_plsql to the APEX Listener 2.0 EA.

Also, make sure to keep an eye on the next release of Oracle’s flagship database product, Oracle Database 12c. The c refers to the popular buzzword cloud. The release date is expected to be December of this year or January of next year, but you never know if they surprise us during OOW.

Now, enough said about things that are taking place in Oracle world. At this very moment of writing (02/09), Oracle is upgrading apex.oracle.com to a pre-production release version of APEX 4.2. So it’s certainly worth having a closer look at some of the new features in APEX 4.2. A complete list of all new features can be found here.

The first thing you’ll notice when opening up APEX 4.2 is its look and feel. A quick list of what is changed in this area:

  • updated the login screen; larger input fields and buttons
  • modernized the APEX logo and tabs
  • a lot of icons have been updated – definitely an improvement
  • the page edit component view has been made more user friendly
  • modernized the interactive reports; larger search field, buttons and icons + cleaner pull-down menus
  • updated wizards; content region is centralized, wizard progress shows on top instead of to the left

As you can see, a lot of effort has gone into the overall design and the end result is certainly an improvement compared to previous versions. These changes, however, had no significant impact on the way you work with the application builder. So there is no reason at all to be discouraged by this new look and feel.

Another remarkable change in APEX 4.2 is the distinction that has been made between two type of themes. The latest modern themes (theme 21 – 26) are now called standard themes and are shown by default when choosing a theme for your application (or user interface as you’ll see later). It’s still possible, however, to choose from the other older themes (theme 1 – 20) by selecting legacy themes in a select list.

The most important feature of APEX 4.2 is the possibility to build mobile web applications in a declarative way. The technology used behind the scenes to achieve this is jQuery Mobile. You can read one of my previous articles for a detailed explanation regarding the integration of jQuery Mobile into APEX. There’s one concept you really need to be aware of when building a cross-device application with APEX: user interfaces.

An application in APEX 4.2 has the ability to support multiple user interfaces. For now, the list of available user interfaces you can choose from is limited to desktop and jQuery Mobile smartphone (= smartphones and tablet devices). You can manage your application’s user interfaces by navigating to the application definition or via the themes section in shared components. The introduction of the UI concept puts some extra intelligence into the application builder. For example, the first step in the page creation wizard makes you choose between the available UI’s. This means that every single page in your application is linked to one user interface. You’ll also notice that the list of page types/items you can choose from changes depending on what UI you selected, hence the show unsupported select list that can be found on several wizard pages.

The introduction of the whole user interface concept is to avoid the need for a separate application just to support another device type. That’s the reason why you no longer specify the home and login page at application level, instead you manage these settings per user interface. Another important aspect that has changed because of the UI architecture is the creation and assignment of themes. A theme in APEX 4.2 is associated with a user interface. All themes available in the previous versions of APEX now became desktop themes. By default, one jQuery Mobile theme is provided, theme 50, which includes all the templates to facilitate mobile web application building.

A second major feature in APEX 4.2 is the reintroduction of packaged applications. In 2006, Oracle released APEX 2.2 and made available a list of applications that could be freely downloaded from the OTN website. You could then install the downloaded application(s) in your APEX environment and use them throughout your organization. Time passed by and eventually Oracle removed these packaged applications since they were outdated and no longer followed recommended coding practices.

Let’s forget about history and have a look at how packaged applications look like in APEX 4.2. The first thing you’ll notice is the tight integration with the application builder. Packaged applications come shipped – not installed – with the APEX installation and have actually become an independent application type (next to database and websheet applications). All packaged applications will also be available on the Oracle Database Cloud Service. The installation procedure is plain simple and takes no more than a single minute. You are only allowed to change the authentication scheme during the creation wizard so that you can easily provision the application to your user base.

There are two types of packaged applications:

  • sample applications: demonstrate specific capabilities and functionalities of APEX
  • productivity applications: a diverse set of business applications to serve a specific purpose within an organization

By default, productivity applications are locked and fully supported by Oracle. However, it is perfectly possible to unlock a productivity application. That way you can review its implementation and/or modify certain matters to suit your needs. Please note that once you unlock a packaged application, you lose Oracle’s support. This policy does not relate to sample applications.

The above features are, in my opinion, the most important ones. Let’s end with a short list of other interesting features/enhancements in APEX 4.2:

  • HTML5 item types: slider, HTML5 date picker and yes/no (shows as select list in desktop, flip toggle switch in jQM).
  • HTML5 attributes: placeholder attribute, required attribute and display orientation attribute for checkboxes and radio group.
  • HTML5 charting capabilities: includes the same functionalities as Flash charts, except no gauges and Gantt chart types or 3D subtypes.
  • Chart series can be made conditional.
  • New report region type for the jQuery Mobile user interface; list view.
  • Increased page item limit from 100 to 200.
  • Added the possibility to add a read-only condition at page and region level.
  • AJAX based dynamic actions to work asynchronously.
  • A file repository for team development which allows you to add attachments to bugs, to-dos and features.