Wizard API updated!
Tim Boudreau has released a new version of the Swing Wizard library (version 0.997) that fixes the WizardException bug reported in JavaWorld's recent Open Source Java Project profile. The article's examples have been reworked to test out the new, improved WizardException. Thanks, Tim, for this helpful fix!
Open Source Java Projects: The Wizard API

Newsletter sign-up

Sign up for our technology specific newsletters.

Enterprise Java
View all newsletters

Email Address:

Q&A: JavaServer Faces

Sun engineers discuss the relevance of JavaServer Faces

What is the JavaServer Faces specification all about? Why is it important to Web development?

Among other things, JavaServer Faces technology is a framework that simplifies user interface (UI) development for Web applications. It helps users assemble reusable UI components on a Webpage, manage its state, handle events, and easily connect them to backend data sources.

It's important to Web developers because it saves them time, enables them to build more powerful applications, and makes their lives easier. It brings some of the capabilities of rich client user interface programming to the Web. It is difficult to program high-quality Web-based user interfaces for several reasons: the Web has no notion of state, so one user interface view can't convey itself to another; there's no way to convey events; and there's no notion of components.

JavaServer Faces helps developers deal with this inhospitable environment. It provides the fundamental building blocks of user interactions, and allows for the reuse of components. The technology is attractive to tool vendors because, for the first time, there is a standard for Web user interface components—a standard that was designed through the Java Community Process. Which makes Web development even easier.

There have been many other technologies in the space, and tool vendors have had to chase these other technologies, including Struts, Tapestry, and Velocity. Now tool vendors can converge on the standard, and, as a result, developers find Web applications that are created in one tool have the ability to be altered in another. Additionally, these tools are supported in many different environments.

Developers reap the benefits of standardizing tools and components for JavaServer Faces. With standards, developers can pick and choose tools and components from a variety of vendors that best fit their needs. Many of the JavaServer Faces-enabled tools come from vendors that developers are already familiar with. When compared to components built from scratch, JavaServer Faces components are more powerful and of better quality.

What's the status of the JSR?

The specification, reference implementation, and technology compatibility kit for Java Specification Request (JSR) 127 were released in March 2003. A maintenance release came out at the end of May 2004. The maintenance work involved some bug fixes and performance work in the reference implementation, and some clarifications to the specification. The specification is available from the Java Community Process Website and the reference implementation is available at java.sun.com.

The reference implementation is also included in the Java 2 Platform, Enterprise Edition (J2EE) SDK, which provides an application server with JavaServer Faces built right in.

The main thrust of the JavaServer Faces 1.2 JSR will be to make JavaServer Pages (JSP) and JavaServer Faces technologies more cohesive. Originally, JavaServer Faces 1.0 was dependent on JSP 1.2 and Servlet 1.3, and there was no way to use JSP's new expression language. The JavaServer Faces expert group crafted an expression language that was very similar to JSP, but added a few new concepts to satisfy new requirements. To remedy the overlap, JavaServer Faces 1.2 will depend on JSP 2.1, which is being defined in JSR 245. The main goal of the two new JSRs is to roll JavaServer Faces' new concepts back into the expression language in JavaServer Pages. Using the same expression language for JavaServer Pages and JavaServer Faces will make it easier for developers to access application data stored in JavaBeans components. Of course, there will also be bug fixes and performance improvements.

1 | 2 |  Next >

Discuss

Start a new discussion or jump into one of the threads below:

Subject Replies Last post
. why JSF when tag libraries do the same?
By sid
6 10/05/06 10:22 AM
by Anonymous
. Q&A: JavaServer Faces
By JavaWorldAdministrator
5 10/05/06 09:56 AM
by Anonymous


Resources