Dive into Oracle ADF

Send me a mail
 Dive into Oracle ADF   Click to see the XML version of this web page.   (Updated: 2/3/2008; 8:11:44 PM.)
Tips and tricks from Steve Muench on Oracle ADF Framework and JDeveloper IDE

Search blog with Google:
 

Search BC4J JavaDoc:
 

January 2003
Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Dec   Feb

Get Firefox!

Friday, January 17, 2003

Using view objects inside of entity object business logic is good practice. It avoids the runtime overhead of dynamically describing SQL statements -- which is incurred if you use the createViewObjectFromQueryStmt() API -- and it more clearly separates the SQL statements in use in your application. Here's an example of using a view object in a entity object to implement an efficient existence check (which checks both the database and the entity cache for a match).
7:19:05 PM    



One widely misunderstood aspect of application modules is that, at runtime, they act as a container of  instances of view objects. They do not own the view objects outright. Conceptually, application modules are analogous to a UI panel, which at runtime contains instances of UI controls. This article explains that Application Modules are containers of Instances of View Object data controls.
5:13:09 PM    


In addition to being used by over 800 of our own internal applications developers who work on self-service applications for the Oracle E-Business Suite, the BC4J framework is also at the heart of Oracle Learning Network  site that runs using the Oracle iLearning application. The Oracle iLearning team's application is also a part of our normal regression testing internally.


10:55:06 AM    


"How big should I make my application modules?" is another question I answer frequently for people.
 
Before being called "ApplicationModules", during early Beta's of BC4J they were called "WorkUnits". By design, they are meant to provide a service encapsulation (via their custom methods exposed to the client) and a central place to access the collections of value objects that the client application requires relating to some developer-defined unit of work.
 
They are designed to be "as small as the Use Case requires", but easily composable so you can assemble larger data model out of  reusable, smaller components. This is why one application module can aggegrate nested "instances" of other application modules that it wants to include lock-stock-and-barrell in it's data model.
 
If you have a set of web pages that implement a given end-user task, you can use the same application module for the entire set of those pages. A sophisticated use of application modules can dynamically load and unload nested application module instances at runtime inside a containing application module instance as needs require.

10:39:40 AM    


"Why isn't my code insight working?" You're working on code all day. Every once in a while it seems that the class you've typed into your Java file isn't getting the context-senstive code insight like it should. What's the deal? From my experience, these are the first things to check...


12:00:15 AM    


© Copyright 2008 Steve Muench.