| By Ric Smith | Article Rating: |
|
| September 20, 2007 03:00 PM EDT | Reads: |
7,880 |
First released in March 2004, the server-side component model
introduced by JavaServer Faces (JSF) brought the promise of simplifying
Web-user interface (UI) development. Then in February 2005, Jesse James Garrett
coined the term
interaction on the Web. The stale click-and-wait
experience once associated with Web applications is no longer acceptable. Users
now expect real-time updates and desktop-like functionality coupled with the
ubiquitous nature of the Web. Consequently, developers are now stretching the
limits of the JavaScript programming model and battling cross-browser
idiosyncrasies to mimic desktop functionality over the wire. The result is an
escalation in the complexity of Web development – a problem initially resolved
by the elegance of the JSF component model. Luckily, JSF has evolved alongside
The flexibility of the JSF component model (that is, decoupled
presentation, state, and behavior) makes it relatively easy to build components
that not only render HTML, but also render other markup presentation languages,
including DHTML and JavaScript. In their simplest form, AJAX-enabled JSF
components use a custom render kit to push a JavaScript and markup presentation
to a client browser. In this case, the content rendered not only represents the
component, but also provides the necessary functionality in the form of
supporting JavaScript objects that initiate XMLHttpRequests (XHR) and handle
call backs. These XHR requests, made with JavaScript rendered to the client,
are treated as first-class citizens in the JSF life cycle. Tight integration
with the JSF life cycle enables JavaScript objects to invoke operations on
managed beans, which contain server-side application logic. The beauty of this
model lies in its ability to encapsulate the intricacies of
One benefit of providing
component representation on both the client and server sides is that Java
events are triggered and handled on the server, while JavaScript handles events
on the client, eliminating many previously required round-trips to the server.
The following example illustrates this point. When a user selects a node in a
collapsible tree, a tabbed panel or other component on a browser screen is
updated and a partial page refresh occurs. Before client-side JavaScript, page
updates necessitated a round-trip to the server, even when advanced JSF
component sets, such as Apache Trinidad, were used.
The ability to balance client- and server-side event
handling is not the only advantage gained by a deep and meaningful marriage
between
To demonstrate this concept, let’s look at the difference in the code execution necessary to render a simple form button in Dojo and an AJAX/JSF framework.
Published September 20, 2007 Reads 7,880
Copyright © 2007 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
About Ric Smith
Ric Smith is director, business and product strategy at Kaazing. provides Kaazing Corporation with a wealth of experience in product management and consulting for enterprise products and services. Prior to joining Kaazing, Ric was a principal product manager for Oracle's Fusion Middleware at Oracle's Headquarters in Redwood Shores, CA. In his role as a Principal Product Manager he was responsible for the evangelism and product direction of Oracle's AJAX and Java EE Web Tier offerings. Before joining the Fusion Middleware team, Ric worked for Oracle's consulting business as a principal consultant where he led development of mission-critical applications for prominent organizations within the defense/intelligence industry. In addition, Ric won consecutive awards for technical achievement for each year of his tenure as a consultant. Ric is a frequent speaker at international events and has written articles featured in leading industry publications such as Java Developer's Journal and AJAXWorld Magazine. He is also a representative to the OpenAjax Alliance and an honors graduate of the University of Arizona.
![]() |
Bruno 09/19/07 03:28:03 AM EDT | |||
Hello Ric, Ever heard of Google Web Toolkit ? This framework *really* provides an unified API (client and server side in Java), where JSF needs to know about HTML, JSP, JSF, Java and XML. Bruno |
||||
- Universal Middleware: What's Happening With OSGi and Why You Should Care
- An A to Z of Cloud Computing Companies in 2009
- SOA and eXtreme Transaction Processing (XTP)
- Ulitzer’s Amazing First 30 Days in Public Beta
- SYS-CON Announces Government IT Conference & Expo
- Why an Application Grid?
- 2nd International Cloud Computing Expo New York Photo Album
- "Government IT Expo" to Highlight Cloud Computing and SOA
- Building a Composite Application Using Multiple Web Services
- Commercial vs Federal Cloud Computing
- Universal Middleware: What's Happening With OSGi and Why You Should Care
- An A to Z of Cloud Computing Companies in 2009
- Blending Discovery, Governance, Security, and Management in SOA
- SOA and eXtreme Transaction Processing (XTP)
- Ulitzer’s Amazing First 30 Days in Public Beta
- Enterprise Mashups: The New Face of Your SOA
- SYS-CON Announces Government IT Conference & Expo
- Why an Application Grid?
- Web Application Management
- 2nd International Cloud Computing Expo New York Photo Album
- The i-Technology Right Stuff
- Get the Message
- Success, Arrogance, Rise and Fall
- i-Technology Viewpoint: Is Web 2.0 the Global SOA?
- i-Technology Viewpoint: Thinking Outside the VC Box
- ESB Myth Busters: 10 Enterprise Service Bus Myths Debunked
- i-Technology Viewpoint: When to Leave Your First IT Job
- SOA Web Services Edge Conference Coverage on SYS-CON.TV
- Five Reasons Why Web 2.0 Matters
- SYS-CON.TV's "SOA Web Services" and "Enterprise Open Source" Programs To Air in December







































