Community
Participate
Working Groups
This bug is being created to start a discussion on the changes and new features in Faces 1.2 compared to 1.1 that have an impact on JSF tooling. Here's a list of my findings to kick things off: - Unified EL support means that we need to overhaul the current variable/property resolver framework. - Support for FunctionMapper's means that we must fix problems parsing EL functions and support their linking where possible to a corresponding Java static method. - Implicit objects now truly implicit: no longer able to override in the variable resolver. - Unfound loadBundle’s now throw exceptions: validation here increases in importance. - Resource bundles can now be loaded through the faces-config file (new variable resolver) without a loadBundle tag. - Managed beans now support Java 5 annotations. - <c:forEach> JSTL tag can interoperate with JSF tags. - Specific algorithm for generating tag ids. This may be useful in implementing bi-directional linking of components to source tags because we can be guaranteed that our ids won’t be changed. - There are now standard converter messages that can be resolved by id. - Faces config file now schema instead of DTD based.
Also changes to standard component properties that may require support: h:column: Add headerClass and footerClass attributes. Possible new meta-data required. All UIInput tags: Add optional label attribute that adds a information about a component. May need to process in order to perform design time WYSIWYG text substitutions. h:outputLink and h:commandLink: Add disabled property. New meta-data required. f:verbatim: Add rendered attribute to control rendering. New meta-data f:setPropertyActionListener: New tag. New analysis required. f:view: Add renderKitId attribute. New meta-data.
Triaged for WTP 2.0. Please close this bug if the features listed here are already being tracked in the wiki page:http://wiki.eclipse.org/index.php/Support_for_JavaServer_Faces_1.2_%28Java_5_EE%29
Is this still valid?
This bug needs review to make sure we have shaken out all the requirements.
Please update the bug with items that needs to be done and re-target the bug for 3.0
Remaining work to be done: - Unified EL support means that we need to overhaul the current variable/property resolver framework. - Support for FunctionMapper's means that we must fix problems parsing EL functions and support their linking where possible to a corresponding Java static method. - Implicit objects now truly implicit: no longer able to override in the variable resolver. - Managed beans now support Java 5 annotations. - <c:forEach> JSTL tag can interoperate with JSF tags. - Specific algorithm for generating tag ids. This may be useful in implementing bi-directional linking of components to source tags because we can be guaranteed that our ids won’t be changed. - There are now standard converter messages that can be resolved by id. h:column: Add headerClass and footerClass attributes. Possible new meta-data required. All UIInput tags: Add optional label attribute that adds a information about a component. May need to process in order to perform design time WYSIWYG text substitutions. h:outputLink and h:commandLink: Add disabled property. New meta-data required. f:verbatim: Add rendered attribute to control rendering. New meta-data f:setPropertyActionListener: New tag. New analysis required. f:view: Add renderKitId attribute. New meta-data.
Deferred to 3.0.
Additional requirement discovered due to https://bugs.eclipse.org/bugs/show_bug.cgi?id=218443. In JSF 1.2, the action method binding/expression now has a signature: Object action(); rather than the 1.1 spec which was: String action(). See section 7.3 of both specs. Note also that in the bug listed above, the assertion was made that a void return value was valid since it results in a null outcome value in the default ActionListener. But the spec doesn't support this, so we would need a strong 'de facto' argument in favor of supporting it.
Deferred due to lack of resources.