Ajax is red-hot and well on the way to becoming a de facto standard for the next generation of Web applications because it delivers many key benefits, including:
- Improved user acceptance and productivity, with a desktop-like experience.
- Ease of deployment with immediate update availability to all users.
- Adherence to standards and a dependency only on widely deployed technologies.
- An important developer community with very active open-source projects.
- Easy incremental improvements to existing Web applications
- A successful organization, the OpenAjax Alliance, backed by market heavyweights to disseminate Ajax know-how and foster interoperability.
But jumping aboard the Ajax bandwagon doesn't mean an easy ride and can be demanding for IT developers. For instance, the development ecosystem is not as rich and productive as their desktop counterparts, and the asynchronous communication with the servers quickly becomes hard to design, debug and maintain for large-scale applications.
The Java Platform
For developers working in Java, there are two server-side technologies that can help overcome some of today's Ajax application development hurdles:
- JavaServer Faces (JSF) is a Java standard built upon the Struts experience. It accelerates Web application development thanks to a tooling ecosystem with integrated development environments (IDEs), such as Oracle JDeveloper, IBM/Rational Application Developer and Sun Studio Creator and JSF-ready Web servers such as IBM Websphere Application Server, BEA Weblogic and Oracle Application Server.
- Portals, like those conforming to the JSR 168 standard, provide many additional benefits for content aggregation, single sign-on a,d display personalization with persistence to deliver a customized experience to users.
In this article, we provide an explanation of how JSF and JSR 168 portals can be used to deliver Ajax applications. We first show how to integrate JSF into JSR 168 portals, then how to extend these JSF components to provide Ajax behaviors within the portals.