Skip to main content

Facelets in JSF 2.0 update

Posted by edburns on November 18, 2008 at 5:49 PM EST

We're still plugging along on getting Facelets fully specified so a clean-room implementation can be done of it. Today I've been expanding the charter of a new class, PageDeclarationLanguage, which is vended from the ViewHandler. PageDeclarationLanguage (PDL) is the starting point for all things specific to the way the view is described. The idea is that even within the concept of a single ViewHandler, it's possible to have different ways to declare a view. We'll be using a PageDeclarationLanguageFactory and require that a compliant implementation provide PDL impls for JSP and for Facelets (as defined in JSF 2.0). The most recent version of this class is from Early Draft Review 2, at <https://javaserverfaces-spec-public.dev.java.net/nonav/snapshots/edr2/javadocs/javax/faces/webapp/pdl/PageDeclarationLanguage.html>

I've made a bunch of changes to that class just today, but those will be in a later version of the specification.

In other news, Roger has been doing great work on declarative Ajax and we'll have an ajaxification story present in JSF 2.0 similar to the <a4j:support /> tag in RichFaces.

Technorati Tags:

Related Topics >>

Comments

Ryan, the current system would require you to decorate the ResourceHandler to enable this behavior, it's not built into the spec automatically. Ed

@rahul: PDL stands for Page Description Language. It's just the term we're using for Facelets, JSP, JSFTemplating, Clay, or whatever else people come up with in the future.

Can you explain on more simple terms, what exactly is change you guys are planning for Facelets? Also what exactly is PDL?

I understand that I can package resources such as CSS, images and JavaScript inside a .jar on the classpath, but can I do the same with Facelets templates, managed beans, navigation rules, etc? I'm thinking of plugins/extensions for a JSF web app beyond a UI component. Can you please point me to some parts of the spec to read more about this?