Posts tagged rich client components
ADF 11g : Adding a Keystroke Filter to an ADF Shuttle Component
1Recently I had to implement a selectManyShuttle Component with a filter on it. Filtering a selectManyShuttle Component has been described many times so that is no rocket science. However, this implementation asked for a keystroke filter. The user enters a value, and the shuttle is filtered immediately.
In this post I describe how to implement this feature. (more…)
Bookreview: Oracle Fusion Developer Guide
0Oracle Fusion Developer Guide: Building Rich Internet Applications With Oracle ADF Business Components And Oracle ADF Faces
In December 2009 some 750 pages of ADF examples and ADF how-to’s were released in a great book: “Oracle Fusion Developer Guide: Building Rich Internet Applications With Oracle ADF Business Components And Oracle ADF Faces” by Frank Nimphius and Lynn Munsinger. I ordered the book at amazon (this is the direct link) and received it by mail a few weeks later. In this post I share my first impressions with you. (more…)
ADF 11g – implementing conditionally required input fields – by playing client side hide and seek
7The requirement I was dealing with today in ADF 11g Rich Client Components was the following: we have an input field that is required under certain conditions. Only when one of this cluster of fields has a value, is it required. Otherwise it is optional. The use case was that the fields represent a detail record. There does not need to be a detail record (optional) but if there is one (one of the fields in the detailrecord has a value), then certain fields are mandatory.
The desire was to dynamically set the required-ness of the inputText – depending on whether one of the items in the detail record cluster has a value or not. Dynamically means that when something changes with one of the items, the conditionally required item is immediately refreshed to either required or optional.
It turned out to be fairly easy to implement: the required attribute can be set using an EL expression that refers to a bean method. In the bean we can easily check the values of the other items and determine whether or not based on that assessment the inputText component is mandatory or not. By setting autoSubmit to true for all the items that determine the mandatoriness – and by adding the More >
ADF 11g – the native AutoSuggest behavior
4The recent ADF 11gR1 PS1 release introduced a component we have been waiting for: the inputText with AutoSuggest. An inputText component that will present suggested values to the user depending on whatever text the user has already entered. The implementation in ADF of the functionality that got AJAX started, based on the original Google Suggest feature:
The auto suggest mechanism in ADF is not so much a new input component as it is a behavior (component) that can be added to inputText components. By adding the properly configured autoSuggest to an inputText, it is turned into an inputText with autoSuggest:
<af:inputText label="Country" value="#{item.country}" columns="20" id="it5"> <strong> <af:autoSuggestBehavior suggestedItems="#{countrySuggester.getCountries}"/> </strong></af:inputText>Here we have added the autoSuggestBehavior to an inputText that is used for entering a country. Of course we could have used a dropdown component, combobox or list of values. However, the auto suggest is somewhat more light weight and elegant especially when our collection of countries is far from More >
ADF 11g: Carousel is not just for images – on carousels with panelbox, tabs, panelform and input components
2Following on the heels of Luc's excellent post on the new ADF 11g carousel component – http://technology.amis.nl/blog/6514/jdeveloper-11112-carousel-component-as-master-and-detail – is another article that shows off this visually attractive component, using it in a slightly different way.
Even though the most logical application of the ADF 11gR1 PS1 carousel component is to use for displaying images, the component does not mandate that approach. We can create carousel-items that contain whatever we like – including forms with enterable items. The carousel can be used for example as an alternative way of presenting, browsing through and editing detail records.
As you can see in this screenshot, a carousel item can hold various nested components, such as PanelBox, PanelTabbed, PanelFormLayout and all kinds of input components.
ADF 11g – persisted run time user UI personalization or: Impatient man's MDS
One of the rather cool pieces of functionality that did not make it into the JDeveloper 11g Boxer release of early October 2008 is the Meta Data Service or MDS and especially its capability to store and reapply user created personalizations of the User Interface across sessions. Some simple examples of what this means: ADF 11g Rich Client Components allow users to manipulate the state of components – such as the position of the separator in the PanelSplitter, the ordering and width of Table Columns, the initially visible tab or accordion child etc.. Through MDS, these changes are captured and stored for th duration of the session (if so desired), which means that when the user returns to a page thus ‘personalized’, the component will not assume their default state as specified in the JSF page at design time by the developer, but rather the state that user specified. Eventually MDS will persist these component personalizations across sessions – but not right now. That means that at the present when a user starts a new session, all components are presented in their default state.
In this article I will describe two things: Change Persistency for all attributes – not just the More >
Recent Comments