Open Source Ajax Framework For Java EE Application Developers

ICEfaces RIA Journal

Subscribe to ICEfaces RIA Journal: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get ICEfaces RIA Journal: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


ICEfaces Authors: Ted Goddard, Steve Maryka, Pat Romanski, Ken Fyten, Shay Shmeltzer

Related Topics: RIA Developer's Journal, ICEfaces RIA Journal, Java Developer Magazine, AJAX World RIA Conference

RIA & Ajax: Article

How the New ICEfaces Community Is Impacting Open Source AJAX

A revolutionary approach

It’s been about 10 months since ICEfaces.org was launched. Ten months isn’t a very long time – unless you’re on Internet time. Then it’s long enough to have an impact on just about anything.

With that in mind, what’s been happening with the open source AJAX community designed specifically for Java EE developers? Actually, quite a lot. ICEfaces, the open source AJAX development platform that allows enterprise application developers to create Rich Internet Applications (RIAs) in pure Java, has been downloaded over a quarter-million times. More than 20,000 users in 36 countries have become registered users on the ICEfaces.org Web site, and are reaping the benefits of this rapidly growing community.


ICEsoft CEO Brian McKinney with SYS-CON founder
Fuat Kircaali during his recent visit to SYS-CON offices

In part, the success of ICEfaces.org is reflective of the overall interest in the open source AJAX movement. As the popularity of AJAX has mushroomed, it only made sense that open source solutions would come along to give AJAX adherents the benefits of easy platform modification, community support, and lower development costs.

Yet while other development environments are being distributed under the open source umbrella, ICEfaces is unique in several ways: one, it was designed from the ground up as a way for Java EE developers to work in the AJAX world without having to learn JavaScript; and two, it was one of the early enterprise-class products to move from a fee-based licensing scheme to an open source equivalent.

ICEfaces is unlike any other AJAX framework on the market today. The framework turns the client-centric application model on its head, bypassing JavaScript entirely in favor of a thin-client model that leverages the capabilities of JavaServer Faces. Not only does this approach eliminate the need for Java developers to learn a new languages or tools, but even more important, it sidesteps the entire issue of building client-side presentation business logic in JavaScript.

Instead, ICEfaces uses a direct-to-DOM (Document Object Model) rendering technique that allows a JavaServer Faces (JSF) render cycle to render the JSF component tree directly into a server-resident DOM. Incremental updates are achieved using the ICEfaces’ AJAX bridge; this two-part bridge communicates updates using the server-resident component, then reassembles the changes via the client-resident side.

Through this “remoting” of the presentation, ICEfaces has become one of the pioneering technologies of Ajax Push – a revolutionary capability that allows server-side applications to interact with back-end systems and push new content out to the client in an asynchronous fashion, with no user interaction required.

Taking the Leap


The decision to open source ICEfaces was made in the summer of 2006. It was not a decision made lightly, since nearly 20 man years of effort were required to prepare the product and community Website for launch. The product team felt strongly, however, that the product improvements and refinements that were likely to occur under the open source model far outweighed any of the possible risks.

As was hoped, the entry of ICEfaces into the open source market created a huge stir. Adoption of the ICEfaces platform exploded in terms of both users and influence. Users were attracted across the board, from dozens of industries and thousands of mid- to large-scale enterprises. Three out of four users downloaded ICEfaces for the purpose of creating new JSF applications, reflecting the fast-growing nature of AJAX as well as the appeal of ICEfaces to Java developers. Initial production rollouts of applications using ICEfaces started to occur within weeks of launch.

Vital Concerns Addressed


An essential function of any successful open source community, in addition to finding bugs and uncovering feature/function opportunities, is helping to determine the developmental roadmap for the technology in question. 

So what has been the feedback from the growing ICEfaces.org community, and how has ICEfaces changed as a result?  A continuing focus has been on expanding the interoperability and reach of the ICEfaces framework.  Although ICEfaces already supports the broadest array of Java Application Servers, IDEs, third party components and JavaScript effect libraries of any Ajax framework, additional support opportunities exist. 

In July of this year, ICEfaces 1.6.0 was released on ICEfaces.org, providing industry leading support for JBoss Seam, BEA Workshop Studio, MyEclipse Enterprise Workbench and Sun NetBeans.  Initial integration was also made available with Liferay Portal, one of the world’s leading enterprise-class, open source portal platforms, as well as Spring Web Flow, SAP NetWeaver, and Sun GlassFish. 

One of the other key trends impacting both ICEfaces users and the larger Ajax user community is Internet security.  Because traditional Ajax solutions are client-centric, they lay bare the “don’t trust the client” taboo.  ICEfaces’ server-centric nature, combined with its grounding in Java EE and direct-to-DOM technology, provides singular security advantages to the enterprise Ajax market.  No business logic or application data is managed at the client—only pure presentation, eliminating the vulnerability that occurs with client-side logic and application data.  What’s more, validation under ICEfaces is performed exclusively on the server side, so no mismatches or inconsistencies between client-side and server-side validation can occur.  As more and more developers become aware of these strong advantages to ICEfaces, overall Ajax security concerns should lessen in the future.

Looking ahead, ICEfaces will soon include several new components including a rich text editor and Google Maps.  Full support for JSR 168 for portlets and JSF 1.2, a pre-requisite for Java 1.5 and Seam 2.0, is expected in early Fall.  Users can also anticipate some exciting new developments in the areas of functional test and mobile Ajax.

ICEsoft, the founder and host of ICEfaces.org, is deeply committed to the ongoing evolution of the ICEfaces’ product and technology.  The company polls users on a regular basis to measure expectations from both the business and technology perspectives.  It takes into account industry mix, enterprise size and experience, hardware/software infrastructure, and evolving development environments, as it charts the future of the product.

Open source has a history of attracting leading-edge and frequently ground-breaking technologies. Yet even among open source AJAX technologies, ICEfaces is revolutionary in its approach to AJAX implementation. With over 20,000 users, ICEfaces seems to be on its way to being a technology to beat. As long as ICEfaces.org users continue to enthusiastically support ICEfaces and to encourage its improvement, the sponsors of this thriving community will play their part to sustain it as a core AJAX solution.

More Stories By Brian McKinney

Brian McKinney is president and CEO of ICEsoft Technologies. An authority in embedded Java and Java-based Internet technologies, he was a co-founder and CEO for AudeSi Technologies, acquired by Wind River in March of 2000.

Comments (1) 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
robbiecheng 07/18/08 12:36:30 PM EDT

How about ZK? It's a pure Java, and server-centric solution. ZK was the most downloaded Ajax framework on Sourceforge last year. Moreover, ZK also support JSF, Seam, and JSP. Take a look at a comparison between ZK and Icefaces.
http://www.zkoss.org/smalltalks/zkIcefaces/