Video and Slides – Data Caching Strategies for Oracle Mobile Application Framework

I have recorded a video tutorial, based on my OOW'14 session - Data Caching Strategies for Oracle Mobile Application Framework. ADF developers who could not attend OOW'14 in San Francisco, this is for you !

Here you can view the slides:

Watch the first part of the tutorial:


Watch the second part of the tutorial:


Described solution is based on the sample application from the blog post - (more...)

Mastering Oracle ADF Bindings: Advanced Techniques

My Oracle OpenWorld presentation “Mastering Oracle ADF Bindings: Advanced Techniques” is now available for download from the OpenWorld web site. In this presentation, I talk about

  • Reading the Bindings tab
  • Bindings in the ADF lifecycle
  • Working programmatically with bindings
  • Getting the binding from a component
  • Working with dynamic bindings
  • Creating a binding programmatically

If you are interested in creating bindings programmatically, you should read Eugene Fedorenko’s blog post on this. He also makes (more...)

ADF Archtitecture Practice – JDeveloper Silent Install

This article describes how to standardize your JDeveloper Installation as requested in Planning & Getting Started – Team, Skills and Development Environments. It is part of the ADF Architecture Practice lessons and describes the installation with examples for windows.


Version 12.1.x

In this version  the Oracle Universal Installer allows the silent installation of JDeveloper. All what you need is the installer file for your platform (e.g. jdev_suite_121300_win64.exe) and a response file. You (more...)

Oracle Mobility Spotlight: Join Us At ODTUG Mobile Day!

qsdglxnwNow that the chaos of Oracle OpenWorld and the craziness of Kscope15 abstract submissions are behind us, it’s time to get into the nitty gritty of where your Enterprise systems are headed. Mobile development plans are at the forefront of everyone’s minds right now, and if it’s not on your agenda then it’s time to get to work!

Screen Shot 2014-10-15 at 1.29.16 PM

Your employees are going mobile, is your business ready?

The statistics of mobile adoption are STAGGERING; Gartner says that 40% of the workforce (more...)

Workaround for ADF 12c Choice List Blank Selection Issue

I would like to share a workaround for Choice List component in ADF 12c. There is specific issue, related to blank selection - as soon as user selects blank selection in the choice list, it starts to invoke value change listener for that list, each time when any other element is selected in the table. This is quite annoying and could lead to unexpected results, especially if you depend on logic implemented in value change (more...)

OOW14 summary: Oracle ADF

Being an ADF developer, off course a lot of my focus and attention went to the ADF related sessions. I left OOW with a mixed feeling about the ADF sessions. On the downside I felt there was not a lot of attention for ADF during the OOW conference. You see ADF or ADF related features during almost all the presentations, whether it is the Cloud, SOA Suite and Service Bus or MAF, but not a (more...)

What I learned at Oracle Open World 2014

Oracle Open World was once again very inspiring, last week I’ve been summarizing my own notes. I decided to share them with the world, if not only for me to find them back in my own blog archive in the (near) future.

As you might have guessed, there was a lot going on about the cloud. So much, it was almost confusing. The most interesting clouds that stayed with me after OOW14 where:

Oracle OpenWorld 2014 Summary: Oracle Lifted Us Up To The Cloud !

The AuraPlayer Team at OOW

The AuraPlayer Team Selfie at OOW

Another Oracle OpenWorld is behind us (when did it become October?) and as usual, it was fun to catch up with the members of my Oracle developer community, my ODTUG buddies and fellow ACEs. Cloud was definitely the hot topic on everyone’s mind this year, especially because Oracle announced their upcoming Oracle Mobile Cloud Services and released their Oracle Developer Cloud Service to production a few weeks before the (more...)

Oracle OpenWorld 2014: Non-life altering observations (but still interesting and useful)

This article does not necessarily discuss the big themes and major stories of Oracle OpenWorld 2014. It does mention a number of facts that I discovered, overheard, observed or otherwise found out about during last week’s conference. They are not necessarily from formal Oracle sources, they have have been part of conversations on the demo grounds or sessions for which no slide evidence exists. Do not base major decisions on these notes – but perhaps (more...)

New Alta UI for ADF UI Shell Application

I have applied new Alta UI for customised ADF UI Shell application. Customised version of ADF UI Shell is taken from my previous blog post - ADF UI Shell Usability Improvement - Tab Contextual Menu. Old application with new Alta UI looks fresh and clean. Runtime performance is improved - ADF transfers less content to the browser, this makes application load and run faster.

Here you can download my sample application with Alta UI applied (more...)

New ADF Alta UI for ADF UI Shell

New skin for ADF in 12c looks great, I have applied it for one of my sample application with ADF UI Shell and it works smoothly. Check Oracle documentation how to apply Alta UI, really easy.

ADF UI Shell with Alta UI - clean and light:


Web- and Mobile-Oriented Architectures with Oracle Fusion Middleware – Oracle OpenWorld 2014

Mobile applications as well as a large class of modern HTML5 web applications are built on top of an architecture with special provisions, such as RESTful services; the personal cloud, to provide a cross-device experience; push; cache; localization; scalability; and secure interaction with the enterprise back end. Gartner refers to this as the web-oriented architecture. Oracle Fusion Middleware offers key products (Oracle SOA Suite, Oracle Identity Management, and Oracle API Gateway) to implement this architecture, (more...)

ADF EMG XML Data Control version 1.0.0

Today at Oracle Open World, we (Wilfred and myself) officially announced the 1.0.0 version of the ADF EMG XML Data Control. Check out the presentation on slideshare if you missed it.

You can get this extension through the JDeveloper Help -> Check for Updates menu. Make sure you select the 'Open Source and Partner Extensions' checkbox:


There you should see the 'ADF EMG Data Control' extension:


A brief description for those (more...)

Suppressing ADF LOV Like Operator Filtering

ADF LOV component provides filtering option with STARTSWITH operation. This is used to check if similar value exists in the LOV, if such value exists - LOV popup is opened with all the suggested values. If user types 10 and there are 100, 1000 in the LOV, instead of accepting value 10 - LOV popup will be opened and all three values 10, 100, 1000 will be displayed. While this is useful, there is no (more...)

ADF Region Data Synchronisation with Change Event Policy

This post applies for multiple ADF regions, based on the same Data Control. I will show you can avoid using ADF Contextual Events to synchronise two ADF regions, when both are based on the same Data Control and this Data Control is shared between the two.

Sample application contains two ADF Task Flows, both are using the same VO instance from shared Data Control:


Two ADF regions are implemented based on these TF's, one implements (more...)

JDeveloper 12c ADF View Token Performance Improvement

There is known limitation in ADF 11g, related to accessing application in the same session from multiple browser tabs. While working with multiple browser tabs, eventually user is going to consume all view tokens, he will get timeout error once he returns back to the previous browser tab. Unused browser tab is producing timeout, because ADF 11g is sharing the same cache of view tokens for all browser tabs in the same session. This means (more...)

Handling Format for BigDecimal Numbers in ADF BC

This may not be as straightforward as it sounds - to define a format for a number attribute in ADF BC. Especially if you are going to have large number (more than 15 digits). Most likely you are going to experience precision/scale and rounding issues, for BigDecimal and Number type attributes with format mask applied. Sounds frustrating? Yes it is. I hope my blog post will help you to implement proper number formatting.

Firstly I'm (more...)

ADF BC View Object Change Notification Listener

ADF BC allows to define triggers to listen for row changes on VO level. We can listen for row updates, inserts and deletes. This can be useful, if you would like to invoke specific audit method or call custom methods to populate dependent transient VO's with updated data.

To enable such triggers, you must add a listener for VO, this can be done during VO creation from standard create method:


ADF BC API methods, such (more...)

Calculating HTML ID for ADF UI Table Row

Each row in ADF UI table is assigned with ID, this is how rows are referenced in HTML. I had a blog post describing how to set a focus for newly inserted row - Improving ADF UI Table CRUD Functionality with Auto Focus. I'm getting ID for selected row using getClientRowKey method and this method returns row identifier, the one which is used in HTML. Blog reader was trying to use the same method to (more...)

Automatically Applying Get Posted Attribute Method for Row Refresh

There is out of the box ADF BC method available to refresh current row, see this post for details - Refreshing Single Row Without Full Rollback. There could be use cases, when refresh method is not sufficient (particularly for a row with dependent LOV's) - it may not reset data correctly. Also there is extra SQL query sent to DB, to fetch row data by key. Even it works well most of the time, still (more...)