IMHO the spec is very clear about this and the stuff in the appendix is a spec bug. From the spec (10.1.2):

A decision was made early in this process to strive for backwards compatibility 
between the latest popular version of Facelets and Facelets in JSF 2.0. The 
sole determinant to backwards compatibility lies in the answer to the question, 
“is there any Java code in the application, or in libraries used by the 
application, that extends from or depends on any class in package 
com.sun.facelets and/or its sub-packages?”
■ If the answer to this question is “yes”, Facelets in JSF 2.0 is not backwards 
compatibile with Facelets and such an application must continue to bundle the 
Facelets jar file along with the application, continue to set the Facelets 
configuration parameters, and also set the 
javax.faces.DISABLE_FACELET_JSF_VIEWHANDLER
<context-param> to true. Please see Section 11.1.3 “Application Configuration 
Parameters” for details on this
option. Any code that extends or depends on any class in package 
com.sun.facelets and/or its sub-packages
must be modified to depend on the appropriate classes in package 
javax.faces.webapp.vdl and/or its subpackages.
■ If the answer to this question is “no”, Facelets in JSF 2.0 is backwards 
compatible with pre-JSF 2.0 Facelets and such an application must not continue 
to bundle the Facelets jar file along with the application, and must not 
continue to set the Facelets configuration parameters.
Thankfully, most applications that use Facelets fall into the latter category, 
or, if they fall in the former, their dependence will easily be migrated to the 
new public classes.

Best regards,
Ganesh

Matthias Wessendorf schrieb:
On Wed, Feb 10, 2010 at 6:26 AM, Ganesh <[email protected]> wrote:
Many Facelets taglibs don't use Facelets tag handlers,
but simply wrap some xhtml templates. Nothing will stop these libraries to
work with MyFaces if we allow old version taglibs.
If we insist on refusing them people will simply switch to Mojarra to get
their application to run.

I know; that's what I meant with my comment before

The argument of a xsd:restriction in the spec will
help little. Just
taking old Facelets is *not* a solution, because the
rest of the application may want to use the new features.
Please try filing this as a bug to Mojarra as Matthias
proposed - if they fix it, MyFaces may insist on version=2.0, but if they
don't I think we shouldn't
either.

I agree

I've carried the question whether a JSF 2.0 compatible implementation is
required to refuse old version facelets taglibs into the EG - let's see,
what they have to say

technically, I think now we are correct.

@Jakob: Did you create such a bug against the RI ?
(that they allow "old" Facelets) maybe another on
not being (too) clear in the spec about it...
-Matthias

on this ...

Best regards,
Ganesh
I see both ways; I think I don't like the fact that the RI has this "bug"
:)
So, end of the story is, almost everybody will blame this to us ;-)
"Oh, crappy MyFaces doesn't work" etc :) All the FUD! :)



Reply via email to