Open for Business

Thursday, June 01, 2006

Oracle's Ajax-enabled contribution coming up

On May 17th during Oracle’s general session at JavaOne 2006, Thomas Kurian announced that Oracle is about to open source yet another exciting technology. Indeed, a year ago Thomas announced at JavaOne that we were going to open source our ADF Faces components which are server-side user interface components based on the JavaServer Faces standard. Thomas also announced that same year that we were going to make Eclipse better by leading a couple of initiative. Well, Oracle delivered. Today we have open sourced ADF Faces and we are leading three different Eclipse plug-ins which are Dali (O/R mapping design time for EJB30 and JPA), JSF tooling and co-leading the BPEL design time with IBM. As for the ADF Faces components (excluding the rich client or Ajax-enabled components) they have been donated to the Apache software foundation. The project is currently waiting to graduate out of incubation and more information can be found here:

So what’s exciting about these Ajax-enabled JSF components anyway?

Oracle has enhanced its already extensive JSF component library ADF Faces, with a set of rich and interactive components that will be part of the ADF Faces Rich Client donation to the open source community. All these components leverage extensively the technique referred to as Ajax. Ajax is a Web development technique for creating interactive web applications. The intent is to make web pages feel more responsive by asynchronously exchanging data with the server, so that the page does not have to be entirely reloaded each time the user triggers an event. Ajax applications are typically more responsive and provide richer interactivity.

Oracle has already donated 100+ server-side (or thin-client) components to the Apache community. Additionally, Oracle will be donating a new set of rich Ajax-enabled components, which will bring the total number of donated components to 150+ JSF components.

The list below is a subset of the JSF rich component library that Oracle decided to contribute to the OSS community:

1- Table
The new table comes with the same functionality already provided by the current ADF Faces table component, plus some extra features that will dramatically enhance the end-user experience. The new table component comes with full support for asynchronously fetching data from the underlying services using the XMLHttpRequest object. The table provides scrolling through records, sorting, and single and multi-select out of the box, as well as built-in support for swapping columns at runtime.

2- Pop-up Menu
One of the coolest and most requested features in a rich and interactive end-user environment is the ability to right-click and display a popup menu at runtime. The new rich-client version of ADF Faces provides a popup component that can be attached to components such as a table. This will allow application developers to provide end-user actions via a popup menu that otherwise would have to be hard-coded in JavaScript. Now the developer experience is purely JSF/Java while the end-user gets the desired "thick-client" behavior in the browser.

3- Accordion
This is a common component in most desktop applications and helps the application developer optimize the use of real estate on the client side. The end-user can click on an accordion and display its content. The new ADF Faces component library comes with two different accordions: one that only displays one accordion at the time and one that can display multiple accordions at a time. So, now application developers will have the same type of functionality in the browser as they have in their desktop applications.

4- Tree
For most application developers the hardest Web widget to implement is a rich Tree widget. ADF Faces comes with a Tree widget that has built-in support for asynchronously communicating with the underlying services. When interacted with, the Tree component will not re-render the entire page, which enhances the end-user experience.

5- Menu
ADF Faces also comes with a "regular" menu component. This component can be used by application developers to create toolbars similar to what is used in desktop applications. The menu is leveraging Ajax and provides DHTML dropdown menus etc. From the application developer’s view there is no JavaScript needed to enable this JSF component - only JSF and Java.

With this new rich client component library application developers will be able to leverage Ajax to its fullest without writing a single line of JavaScript to get the rich desktop user experience on the browser. We are not sure yet if this donation is going to end up in Apache it is not up to us it is completely up to the Apache MyFaces community. Stay tuned!


Post a Comment

<< Home