Posts

Showing posts from November, 2013

What you want to know about allow-unbounded-task-flow-customizations flag in adf-config.xml ?

Sharing a tip that I learned recently from my colleagues. In case if your application does not need  to support user level customization(design time/seeded or run time) for task flow metadata,  here is a tip to improve the performance of your application. By default, the ADF Controller uses a user session level cache to store the application’s unbounded task flow metadata. Though this enables support for user specific customization, it may not be the right thing to have if your application does not need user level customization for unbounded task flows. In such cases you can opt for storing the unbounded task flow metadata at application level by deselecting the check box "Allow Unbounded Task Flow Customizations" in the over view editor of adf-config.xml file(in the Controller page). Now the adf-confog.xml may look like as follows: <adf-config ... > ... ... <adf-controller-config xmlns= "http://xmlns.oracle.com/adf/controller/config" > &l

Dealing with unstructured data in ADF BC using JSON type attribute

Image
Sometimes you may need to deal with unstructured data in your business applications. Wondering what I'm talking about? Let me be more detailed. Consider a scenario where the structure of the data (and even the number of values and their types)  that you may store in a  column of a table changes for different records based on various business conditions. You cannot always have child table to deal with such cases and also simply keeping them comma separated string may not be really enough to process the data. You may want to store some extra metadata along with each item for processing the data later. One solution for such case is to sore the data as XML or JSON type in database table. This post discusses a possible solution for such use case using JSON . There are few things you may want to do if you ware planing to use JSON in an ADF application. 1. Deciding how you want to persist JSON type in DB 2. Deciding how you want the user to edit the data in the UI 3. Binding the UI

Why validation errors are not displayed in the UI when thrown from an application module method bound to a button?

Recently I came across an interesting issue reported related to validation error display. In short, the validation errors associated with an entity object is not displayed in the UI when thrown from an application module method which gets invoked when user clicks on a button. This post discusses the root cause for this issue and a possible work around solution for the same. Before jumping into the topic, a bit of theory. The data validation is very essential for any business application. When user finishes a transaction, the application needs to validate all modified things before storing to data store. It would be ideal if the application can validate all dirty data in one go and show all associated errors in one shot, rather one by one. Oracle ADF BC has such support for validating all modified rows and attributes during a post back from the client and bundle all errors for display them in UI in one go. This is known as bundled exception mode. Take a look at the topic Understan

Declaratively enabling multiple value selection for an LOV in an editable UI form

Image
ADF allows you to specify multiple value selection for an LOV when used in an af:query component backed up by ViewCriteria. This is not a new feature and most of you might have tried it out before. Please take a look at the Fusion Developer's Guide if you are not aware of how to do this. What if you want to enable multiple selection for an LOV displayed in a data capture form or in an editable table UI?Started thinking about manual coding? Wait ! Tthis can be done declaratively (no 'visual' editing support though) with some tweaking to fit in to your use case. This post talks about this hidden feature. I was not aware of this feature(as many of you) till I hear about this from Steve Muench. Thanks Steve ! Here are the steps for building a multiple value selection enabled LOV which may look like as shown below. Following are the steps that you may want to follow: Define a normal SelectOneChoice LOV on appropriate view object attribute. If you are not sure how this

ADF Mobile Design Guidelines

Check it out  ADF Mobile Design Guidelines Wiki

Oracle Technology Network (OTN) Virtual Developer Day

Extract from the announcement page Join this FREE virtual event to learn a simpler and faster way to create better mobile and web applications. Whether you'remodern Web applications or on-device mobile apps for iOS and Android, we have you covered. Live online chats with Oracle will be available throughout the event to answer your questions. Join and learn how Oracle ADF and Oracle ADF Mobile help you develop new and/or extend existing applications to multiple channels including Web and mobile environments. This free virtual event helps new and experienced developers get up to speed on the latest in Oracle ADF and Oracle ADF Mobile. Multiple tracks cover: New developers – Introductory track to Oracle ADF Advanced Oracle ADF developers - Tap into the Advanced ADF Topics track Eclipse developers - Check out the session covering ADF development with Eclipse and Java based mobile development for iOS and Android  Mobile developers – A dedicated