Shay Shmeltzer's Oracle Development Tools Tips

Declarative View Objects (VOs) for better ADF performance

Shay Shmeltzer
Director of Product Management - Oracle

Just got back from ODTUG's kscope13 conference which had a lot of good deep ADF content. In one of my session I ran out of time to do one of my demos, so I wanted to share it here instead.

This is a demo of how Declarative View Objects can increase your application's performance.

For those who are not familiar with declarative VOs, those are VOs that don't actually specify a hard coded query. Instead ADF creates their query at runtime, and it does it based on the data that is requested in your UI layer. This can be a huge saver of both DB resources and network resources. More in the documentation.

Here is a quick example that shows you how using such a VO can automatically switch to a simpler SQL instead of a complex join when needed. (note while I demo with 11.1.2.* the feature is there in 11.1.1.* versions also).

The demo also shows you how you can monitor the SQL that ADF BC issues to the database using the WebLogic logging feature in JDeveloper.

As a side note, I would have loved to see more ADF developers attending Kscope. This demo was part of the "ADF intro" track at Kscope, In the advanced ADF track you would have been treated to a full tuning session about ADF with lots of other tips. Consider attending Kscope next year - it is going to be in Seattle this time.

Join the discussion

Comments ( 2 )
  • ILya Cyclone Sunday, June 30, 2013

    Nice post, Shay, thank you.

    I wonder if there is such opportunity in expert mode VO with SQL calculated attributes?

    On a main page of my ADF application I have a table with some heavy SQL calculated columns which are hidden by default! I see a great waste of resources here, by I can see no way to calculate those attributes only when it is needed - when the columns are visible.

    Could you suggest something?


  • Florin Marcus Tuesday, January 14, 2014

    Just as a reaction of the above comment made by ILya Cyclone:

    SQL calculated attribute in declarative view objects doesn't work for now, as there is a bug on activation/passivation lifecycle.

    Declarative view objects is a seductive solution, but not mature yet.

Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.