Web.xml parameter Default Dimensions

In a previous post, I explained how you can use the property 'autoHeightRows' to stretch a table. This is mainly useful in JDeveloper 11g, because in JDeveloper12c the stretching of tables is a lot better.

The main reason for this is that JDeveloper 12c sets the context-parameter Default Dimensions to 'auto' in the web.xml file:

oracle.adf.view.rich.geometry.DEFAULT_DIMENSIONS
auto

The default value of this property (if not set) is not (more...)

The Long Tail of Application Usage

A long tail is a distribution of some data point where a few data point have a high value, but most of the data points have a much lower value. When sorting the data points by value, there will be a large “head” and a long “tail”.

Application usage displays the “long tail” characteristic: A few screens are used much more than others.

Long tail of app usage

If you are re-developing your application, for example moving from Oracle Forms (more...)

Start an incognito browser from JDeveloper

In web development, a lot of times you want to avoid your browser caching messing up different sessions. Luckily most browser have some sort of an incognito modus now a days. I myself use Google Chrome the most while developing in ADF.

There is a command line start up parameter to start Google Chrome in incognito modus, a great feature in JDeveloper is that you can set these command line parameters.
If you navigate to (more...)

New publication for Oracle professionals

OTech Magazine Winter 2014If you are working with Oracle software as a developer, DBA or application server administrator, you should read the new OTech Magazine.

The Winter 2014 issue is almost a book: 136 pages of high-quality technology articles by some of the leading experts in their respective fields.  My contribution is the article “From Requirements to Tool Choice” about how to choose the right Oracle development tools (ADF, APEX, or Forms).

And did I mention it (more...)

The Sorcerer’s Apprentice

The first issue of my ADF Mastery newsletter has just been published (sign up here if you missed it). In this issue, I discuss Oracle ADF skill levels.

If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization.

Gerald Weinberg, Weinberg’s Second Law

Too many programmers simply Google for a code snippet that seems like it might solve the problem at hand, and use it (more...)

Dynamic table height with the autoHeightRows property

Our use case was to have a table displaying data, with under this table some content. The content needed to be directly under the last table row. In ADF 12c this goes a lot better, but in ADF 11g, the table takes up some default space. 

I recreated this on a HR example application: 

ADF has a cool feature which can help in situations like this, it’s called ‘autoHeightRows’.  In the documentation of the (more...)

Index page for Audit Rules

Over the last few weeks, I gathered and produced more and more info about Audit Rules, JDeveloper Extension Projects and other stuff related to creating Audit Rules.
I thought it might be wise to create some sort of an index page to refer to all these blogs, guides, articles and (more...)

ADF Meetup in Copenhagen January 7

I’m establishing an ADF community here in Denmark (primarily Copenhagen) where we can meet face to face and discuss our ADF projects and challenges across companies and projects. The next meeting is on January 7 – please sign up here:

http://www.meetup.com/Copenhagen-Oracle-ADF-Developers/events/157687292/

Extra Christmas Present?

In 2014, I’ll be sending out a monthly ADF newsletter to help you on your way towards mastering ADF. If you sign up for the newsletter before Christmas, you’ll be entered into the drawing for a copy of my latest book “Developing Web Applications with Oracle ADF Essentials”. Sign up (more...)

Webservice interaction patterns – part 2 – Synchronous Webservice call timeouts

Goal: For reasons of performance and more importantly, good user experience, he client application (ADF) should be able to timeout gracefully instead of hanging indefinitely (and/or potentially causing STUCK threads on the ADF server) when invoking an external 'synchronous' web service.

At runtime
When I run the application,
If I (more...)

ADF EMG Audit Rules 1.0 Released

Today at the UKOUG I showed a new plug-in for JDeveloper 12c together with Wilfred, the ADF EMG Audit Rules. You can find it through JDevelopers Check for Updates in the Help menu. This plug-in is a starting point for creating rules out of the code guidelines document you (more...)

Book Review: ‘Developing Web Applications with Oracle ADF Essentials’

Packt asked me to review the book ‘Developing Web Applications with Oracle ADF Essentials’ by Sten Vesterli. The book isn’t a big bible, it’s 270 pages long and an easy read. Sten jumps onto the recently released ADF Essentials and takes you by the hand on how to (more...)

Installing ADF 11.1.2.4.0 on Red Hat 6

Here is my experiences with installing ADF 11.1.2.4.0 on Red Hat 6 (64-bit) using Java 7.

FMW releases are big and complicated. Between the main FMW releases, Oracle release some products on separate “branches”. This is to fast track new features.

ADF 11g Release 2 is such a fast track product. The latest ADF 11g release 1 version is 11.1.1.7 and the latest release 2 is 11.1. (more...)

Easy way to display ADF version for FMW installations

Extra from jar files

# FMW 12.1.2
[oracle@wintermute ~]$ cd /u01/app/oracle/product/adf12c/oracle_common
[oracle@wintermute oracle_common]$ unzip -p modules/oracle.adf.share_12.1.2/adf-share-support.jar | tr '[\000-\011\013-\037\177-\377]' '.'  | grep "JDEVADF"

Oracle-Label: JDEVADF_12.1.2.0.0_GENERIC_130608.2330.6668.
Oracle-Label-JDEVADF: JDEVADF_12.1.2.0.0_GENERIC_130608.2330.6668.

# FMW 11.1.1.7
[oracle@wintermute ~]$ cd /u01/app/oracle/product/osb111/oracle_common
[oracle@wintermute oracle_common]$ unzip -p modules/oracle.adf.share_11.1.1/adf-share-support.jar | tr '[\000-\011\013-\037\177-\377]' '.'  | grep JDEVADF

 (more...)

ADF Architecture Made Simple: Small, Medium, Large

There are lots of ways of building ADF applications, so there is a very large number of possible architectures. I’ve found that three good architectures are:

  • Simple
  • Modular
  • Enterprise

In a simple architecture, you build the entire application in one workspace. Business components go into a model project in the (more...)

JDeveloper 12.1.2 EJB & Java Service Facade Datacontrol

With JDeveloper 12c (12.1.2)  Oracle added some great updates to the ADF EJB / Java Facade Datacontrol. Oracle already added the Java Facade and Named Criteria support in its previous versions of JDeveloper but now also added the so wanted List of Values feature, just like we have (more...)

(Automatic) Partial Page Rendering across Taskflows

One of the great features of ADF is the easy out-of-the-box support for Partial Page Rendering (PPR) using the partialTriggers, autoSubmit and partialSubmit properties. And when things get a bit more complex there is a very easy API to do it programmatically. But what if

I am sailing…

Next week, I’m off for the OUGN Spring Conference that the Norwegian Oracle User Group arranges on board a cruise ship sailing from Oslo to Kiel and back. This event gathers the Oracle A-List, including Tom Kyte, Cary Millsap, Bryn Llewellyn, Mark Rittman, Markus Eisele and many others – it’s (more...)

Oracle OpenWorld Submissions – The Full Monty

Here one day before deadline, I have entered almost my entire current catalog of presentations for consideration in the Oracle OpenWorld 2013 agenda. One new for this year: “Worst Oracle ADF Project Ever” ;-)

If you would like me to speak at one of your events, the following are the presentations (more...)

Enterprise Manager will not start after ADF upgrade

I recently had to upgrade a WebLogic Server with ADF for a customer. It was WebLogic 10.3.4 to 10.3.6 and ADF 11.1.1.4 to 11.1.2.3. They also used Enterprise Manager.

Everything went fine except for the Enterprise Manager which ended up (more...)