It’s been a while since the last installment of ADF BC Tuning, but it’s time to start it up again. I’ve already posted tips for tuning entity objects, associations, view objects (in three parts), and view links, so now, let’s turn our attention to the last of the major business components: application modules.
Now that we’ve looked at tuning entity objects and associations, we’ll turn to talking about tuning your ADF view objects for good performance and memory management. There’s a lot to say about tuning view objects (more than for any other business component, in my opinion), so I’m going to break this topic up over two posts. This week, we’ll discover the reasons for and against basing read-only view objects on entity objects, learn how to control how much data is fetched into the middle tier at one time (and how to optimize this for your particular case), and talk about what passivation of view objects is and how to control whether and how much of it happens. Next week, we’ll talk about query-level range paging, forward-only mode, and the spill-to-disk feature for handling very large caches.
Last week, I talked a bit about the advantages of using shared application module instances, particularly those scoped at the application level. As I said there, creating shared application module instances is described in Chapter 10 of the Fusion Developer’s Guide for Oracle ADF, as is their primary use, containing view object instances for lookups, to be used in validation and LOV attributes.
This week and next, I’m going to talk about other things you can do with shared application module instances, things that aren’t as well documented. This week, I’ll talk about calling service methods on shared application module instances, the view object instances in their data model, or particular rows from thise view object instances; next week, I’ll talk about actually displaying data from the shared instance’s data model as components (other than choice/LOV components) on a page. Continue reading Shared Application Module Instance Tricks, Part I: Service Methods
Last week, I talked about ways to get many (though not all) of the benefits of service-oriented architecture (SOA) without the overhead of web service invocations by composing your applications out of smaller reusable applications. This week, I’m going to talk about a way to get a different subset of the benifits of SOA (without web services) in ADF 11g, using shared application module instances.