Welcome!

Java Authors: Liz McMillan, Walter H. Pinson, III, Maureen O'Gara, Yakov Werde, Tony Bishop

Related Topics: AJAX & REA, Java

AJAX & REA: Article

AjaxWorld Special: Creating AJAX and Rich Internet Components with JSF

AJAX has gained momentum primarily due to the "XMLHttpRequest" browser object which supports asynchronous communication

A JSF component developer could take advantage of XUL's presentation layer and AJAX for communication, creating a highly interactive component. If the client does not support XUL, the application can dynamically fall back to a non-XUL solution. The application developer will still be able to build one application supporting multiple rendering technologies with one common programming model - JavaServer Faces.

A Page in JSF Supporting XUL and AJAX
The JSF sample shown in Listing 7 illustrates what a page developed with reusable JSF components leveraging XUL and AJAX as rendering technologies can look like.

Apart from the obvious namespaces, the sample contains one namespace that maps to a custom component library - xmlns:bobh=" http://www.bob.org/jsf/html" - and a custom component - <bobh:inputDate ..."/>.

The source of the page is not that different from what we have seen so far with XUL or AJAX, but the main difference is that the Web application developer will not need to learn two ways of supporting Rich Internet Applications in today's browsers.

Summary
This article provides some insight into two of the market's leading view technologies for Rich Internet Applications (RIA) - XUL and AJAX. These technologies have proven that they are more than capable of providing the end user with a highly rich and responsive user interface. We have also touched on the issues with these technologies such as platform support, being non-standards based, and maintenance.

Looking ahead, the potential for JavaServer Faces as a UI component technology is without boundaries. Component developers can provide the community with a wide range of components supporting technologies from HTML to XUL, wireless, and even character-based solutions with the imagination as the only limit.

In future articles, we are going to discuss how to build reusable JSF components that leverage AJAX and XUL.

This article is based on, and contains excerpts from, the book Pro JSF: Building Rich Internet Components by Jonas Jacobi and John Fallows, published by Apress. Book is now on bookstores and Amazon as of February 25, 2006.

More Stories By Jonas Jacobi

Jonas Jacobi is co-founder and chief executive officer of Kaazing Corporation. A native of Sweden, Jacobi has worked in the software industry for more than 15 years with a mission to simplify application development. Prior to founding Kaazing, he worked for Oracle for eight years as a Java EE evangelist and product manager responsible for the product management of JavaServer Faces, Oracle ADF Faces, and Oracle ADF Faces Rich Client in the Oracle JDeveloper team. As co-founder and CEO of Kaazing, Jonas sets the company's business and product strategy and oversees all aspects of Kaazing's operations and mission to become the world-wide leader in real-time software. He is co-author of the best-selling book, "Pro JSF and Ajax: Building Rich Internet Components," (Apress).

More Stories By John Fallows

John Fallows, Co-Founder & CTO of Kaazing Corporation, is a pioneer in the field of rich and highly interactive user interfaces. In his role as chief technology officer, John formulates Kaazing's vision of creating the best real-time web framework based on the Java standard. He defines the architecture of the Kaazing product suite and oversees its development.

Comments (5) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
SYS-CON Belgium News Desk 04/06/06 10:49:39 AM EDT

JavaServer Faces (JSF) standardizes the server-side component model for Web application development but doesn't standardize the presentation layer at the browser. In a series of articles we are going to look at how JSF can fulfill new presentation requirements without sacrificing application developer productivity building Rich Internet Applications (RIA). AJAX has gained momentum primarily due to the XMLHttpRequest browser object, which supports asynchronous communication with any business services used by the Web application. Popular sites such as Google Mail and Google Suggest use AJAX to deliver RIA.

SYS-CON Australia News Desk 04/06/06 10:18:19 AM EDT

JavaServer Faces (JSF) standardizes the server-side component model for Web application development but doesn't standardize the presentation layer at the browser. In a series of articles we are going to look at how JSF can fulfill new presentation requirements without sacrificing application developer productivity building Rich Internet Applications (RIA). AJAX has gained momentum primarily due to the XMLHttpRequest browser object, which supports asynchronous communication with any business services used by the Web application. Popular sites such as Google Mail and Google Suggest use AJAX to deliver RIA.

Jonas Jacobi 02/28/06 02:39:13 PM EST

Hi Reza,

Thank you for those kind words. We totally agree with you that the combination of JSF, Ajax, and XUL is a very powerful combination. Part 2 has already been published - http://jdj.sys-con.com/read/171490.htm

These articles are also based on content from our book Pro JSF and Ajax was recently released - http://apress.com/book/bookDisplay.html?bID=10044

Cheers,
Jonas

Reza 02/28/06 05:11:36 AM EST

Thank you for your very intresting article.
yes JSF ,Ajax and XUL are lost part of RIA and you find them greatly in your article.
i am waiting for next part.

Thank you again.
Reza

Jonas Jacobi 12/06/05 01:38:38 AM EST

Hi newbie,

The easiest way of getting up to speed with XUL and XBL is to visit XUL Planet - http://www.xulplanet.com/

XUL Planet has proved to be a very good source for us when working on our book ([URL]Pro JSF: Building Rich Internet Components[/URL]) and its samples.
Another good source is, of course, Mozilla's web site - http://www.mozilla.org/projects/xul/

Cheers,
Jonas