JSF 2.0 Group Blog

Friday Aug 01, 2008

Early Draft Review 1: Recap

Just in case you didn't notice, we released the Early Draft Review Draft (ERD) 1 of the JavaServer Faces 2.0 specification back in June. If you didn't have the time or inclination to read the spec, here are the key features it includes (links point to Ryan Lubke's well-written detailed blog entries):

Feature Description
Development stages Allows you to keep track of whether your project is in development, production, and other stages. For example, you can display stack traces and re-load artifacts in development mode, but not in production mode. Similar to the RoR RAILS_ENV environment variable.
Resource handling Resources are style sheets, JavaScripts, images, and related artifacts. This feature adds integrated support for packaging and retrieving resources (versioning, I8LN, libraries, the ability to load resources from JARs). This helps improve component suite compatibility, simplify component development, and also make it easier to dynamically include resources in your JSF pages.
Resource re-location New components for head, body, and resources, plus the ability to specify whether resources should be rendered in the head or body. This was necessary in order to allow custom components and JSF pages to render resource references in the proper location -- you don't want your CSS file reference showing up at the end of the page, even if that's where you declared the component.
System events A new application-wide publish/subscribe event system. UI components and the Application object (which is a singleton) can receive system events. This is used internally for the resource re-location feature, but it can also be used with backing beans or other objects.
New scopes We've added a view scope, a component scope (for the component currently being processed), and an attribute map for facesContext. These are very useful for component developers, but they're also useful for storing state in a context that's more in-step with JSF's processing.

You can expect to see more scopes, such as conversation scope, supported either via WebBeans or in JSF at a later date.

Standard disclaimer: these features are subject to change.

Note that you can download Mojarra 2.0 EDR1 to take these new features for a test drive. And hey, it's open source, so you can see the code, too.

EDR1 was primarily about laying the foundation for some of the key features we're working on for JSF 2.0. EDR2 will give you more toys to play with, and should be out in September; see the JSF 2 Schedule for more info.


Post a Comment:
Comments are closed for this entry.