Skip to content

Latest commit

 

History

History
2412 lines (1806 loc) · 70 KB

ChangeLog.adoc

File metadata and controls

2412 lines (1806 loc) · 70 KB

Appendix A: Change Log

Note: this refers to historic issues and titles using the term "JSF". This refers to the pre-Jakarta Faces specification under the JCP.

Changes between 4.1 and 4.0

This release contains the following changes:

  • Issue ID 1832
    Unify ActionSource and ActionSource2

  • Issue ID 1829
    Faces 4.1: Deprecate full state saving (FSS)

  • Issue ID 1828
    Remove mentions in javadoc wrt backwards compatibility of facelets.* context params

  • Issue ID 1823
    FacesMessage: implement equals(), hashcode(), toString()

  • Issue ID 1821
    Spec: jakarta.faces.FACELETS_REFRESH_PERIOD default when ProjectStage is Development

  • Issue ID 1819
    Add UUIDConverter

  • Issue ID 1811
    Missing "if" attribute of <f:viewAction>

  • Issue ID 1789
    Make FacesMessage#VALUES / VALUES_MAP generic

  • Issue ID 1764
    Add ExternalContext.setResponseContentLengthLong

  • Issue ID 1760
    id attribute is missing in vdl of h:head and h:body

  • Issue ID 1739
    Require firing events for @Initialized, @BeforeDestroyed, @Destroyed for build-in scopes.

  • Issue ID 1712
    Javadoc for Application.subscribeToEvent methods has a reference to context that is incorrect

  • Issue ID 1708
    Add missing generics to API that were missed in Faces 4.0

  • Issue ID 1707
    Deprecate unused PreDestroyCustomScopeEvent and PostConstructCustomScopeEvent

  • Issue ID 1549
    Deprecate unused composite:extension

  • Issue ID 1342
    Support @Inject of current flow like "@Inject Flow currentFlow"

  • Issue ID 1263
    Add rowStatePreserved property to UIRepeat, exactly the same as UIData

  • Issue ID 1864
    dataTable rowStatePreserved attribute is missing in vdl

  • Issue ID 1838
    Remove references to the Java SecurityManager and associated APIs

This release now requires Java SE 17 or newer (aligned with Jakarta EE 11).

Changes between 4.0 and 3.0

This release contains the following changes:

  • Issue ID 1581
    New API to programmatically create Facelets

  • Issue ID 1508
    New automatic extensionless mapping

  • Issue ID 1509
    New annotation @ClientWindowScoped

  • Issue ID 1570
    Support custom cookie attributes such as SameSite in ExternalContext#addResponseCookie()

  • Issue ID 1555
    New attribute <h:inputFile multiple="…​">

  • Issue ID 1556
    New attribute <h:inputFile accept="…​">

  • Issue ID 1557
    New method FacesContext#getLifecycle()

  • Issue ID 1559
    New tag <f:selectItemGroups>

  • Issue ID 1560
    New attribute <h:inputText type="…​">

  • Issue ID 1563
    New tag <f:selectItemGroup>

  • Issue ID 1568
    New method UIViewRoot#getDoctype()

  • Issue ID 1573
    New attribute <f:websocket onerror="…​">

  • Issue ID 1574
    New layout="list" for <h:selectManyCheckbox> and <h:selectOneRadio>

  • Issue ID 1582
    New annotation literals for all @Qualifiers

  • Issue ID 1558
    Make UIComponent#subscribeToEvent() more convenient

  • Issue ID 1565
    Skip type attribute from <link> and <script> when doctype is HTML5

  • Issue ID 1567
    Improve <f:ajax> behavior in composite components

This release now requires Java SE 11 or newer (aligned with Jakarta EE 10).

Backward Compatibility with Previous Versions

This release contains the following backwards incompatible changes:

  • Issue ID 1552
    Rename "JSF" to "Faces" over all place

  • Issue ID 1553
    Rename "http://xmlns.jcp.org/jsf/" URL to "jakarta.faces." URN

  • Issue ID 1546
    Remove all JSP support

  • Issue ID 1547
    Remove native Managed Beans (@ManagedBean and related)

  • Issue ID 1548
    Remove MethodBinding, ValueBinding and friends

  • Issue ID 1571
    Remove CURRENT_COMPONENT constants from UIComponent class

  • Issue ID 1578
    Remove deprecated methods of StateManager class

  • Issue ID 1583
    Remove entire ResourceResolver class

Changes between 3.0 and 2.3

Namespace has been changed from javax.faces to jakarta.faces.

Backward Compatibility with Previous Versions

Jakarta Faces 3.0 has a breaking change due to the namespace change from javax.faces to jakarta.faces.

Changes between 2.2 and 2.3

This section gives the reader a survey of the changes between version 2.3 of the specification and version 2.2, using the categories from the issue tracker at https://github.com/jakartaee/faces/issues/.

Big Ticket Features

  • WebSocket Integration
    Issue ID 1396
    See the VDLDocs for <f:websocket>.

  • Multi-field Validation
    Issue ID 1
    See the VDLDocs for <f:validateWholeBean>.

  • Java Time Support
    Issue ID 1370
    See the VDLDocs for <f:convertDateTime>.

  • Support @Inject on JSF specific artifacts
    Issue ID 1316, 527, 1309, 1323, 1283, 1353, 1335, 1333, 1349, 1351, 1350, 1345
    See ExpressionLanguageFacility.adoc

  • Issue ID 1364
    UIData and <ui:repeat> supports Map and Iterable

  • Issue ID 1102
    ui:repeat condition check.

  • Issue ID 1418
    CDI Replacement for @ManagedProperty.
    See javadocs for javax.faces.annotation.ManagedProperty.

  • Issue ID 1103, 1364
    See the Javadoc for javax.faces.component.UIData, and javax.faces.model.IterableDataModel.

  • DataModel implementations can be registered
    Issue ID 1078
    See the javadoc for annotation javax.faces.model.FacesDataModel.

  • Issue ID 1412
    See the javadoc for annotation javax.faces.partialViewContext.getEvalScripts().

  • Issue ID 613
    Ajax Method Invocation. See vdldoc for <h:commandScript>.

  • Issue ID 1238
    Enhanced component search facility. See the javadoc for package javax.faces.component.search.

Other Features, by Functional Area

Components/Renderers
Larger Changes
  • Issue ID 217
    styleClass attribute added to h:column

  • Issue ID 329
    Add “group” attribute to <h:selectOneRadio>.

  • Issue ID 1423, 1404
    ResourceHandler.markResourceRendered(), and isResourceRendered(), UIViewRoot.getComponentResources() enable the discovery of dynamically added resources, even within Ajax requests.

  • Issue ID 1404
    Add API to check if a resource has already been rendered. See Javadoc for javax.faces.application.ResourceHandler.markResourceRendered() and isResourceRendered().

Smaller Changes
  • Issue ID 1422
    UISelectMany detects converter based on first item.

  • Issue ID 1007
    Explicit support for dynamic component manipulation

  • Issue ID 819
    Add “disabled” attribute for h:button

  • Issue ID 1300
    UIViewRoot.getViewMap() and publishEvent().

  • Issue ID 1229
    Document UIData.setRowStatePreserved() in VDLDoc and RenderKit Doc.

  • Issue ID 1135
    Add PostRenderViewEvent.

  • Issue ID 1258
    Clarify text escaping for <h:outputText> or equivalent EL expressions.

  • Issue ID 807
    Pass FacesContext to system event listeners.

  • Issue ID 1113
    Remove onselect attribute from SELECT components.

  • Issue ID 1433
    Add a context-param to enable forcing validation to happen even when there is no parameter corresponding to the current component.

Lifecycle
Larger Changes
  • Issue ID 790
    javax.faces.ViewState and ajax with cross form submit.

Smaller Changes
  • Issue ID 473
    FacesEvent.getFacesContext().

  • Issue ID 1241
    faces-config supports client-window-factory.

  • Issue ID 1346
    Simplify decoration of FaceletCacheFactory.

  • Issue ID 1361
    Correct oversight regarding re-entrancy of flow scoped beans.

  • Issue ID 821
    Implement ExternalContext.getRealPath() on startup and shutdown.

  • Issue ID 1401
    Explicitly prohibit using NavigationHandler from within ExceptionHandler invoked during RENDER RESPONSE.

  • Issue ID 1306
    @FlowScoped should be @NormalScope(passivating=true).

  • Issue ID 1382
    Generify return from ExternalContext.getInitParameterMap().

  • Issue ID 1329
    @NotNull and <f:viewParam>.

  • Issue ID 1403
    Allow entry into flow via <f:viewAction>.

  • Issue ID 1216
    Improve consistency in handling PhaseListener instances registered on UIViewRoot components.

  • Issue ID 1435
    Add ResourceHandler.getViewResources() method.

Platform Integration
  • Issue ID 1379
    ExternalContext.getResponseCharacterEncoding() and Portlet 3.0.

Facelets/VDL
Larger Changes
  • Issue ID 1424
    Add tag <f:importConstants>, see VDLDoc for that tag.

Smaller Changes
  • Issue ID 1362
    Revisit some cardinality rules regarding <tag> and <component> elements.

  • Issue ID 936
    Set FACELETS_REFRESH_PERIOD to -1 if ProjectStage is Production.

Spec Clarifications
  • Issue ID 1254
    Loosen language regarding the contracts attribute on <f:view>.

  • Issue ID 1338
    Clarify pseudocode for resource libraries.

  • Issue ID 1279
    Specify UIInput.isEmpty()

  • Issue ID 1242
    Remove mentione of OpenAjax hub.

  • Issue ID 1215
    Additional warning on DelegatingMetaTagHandler.getTagHandlerDelegate.

  • Issue ID 1131
    “name” attribute not required.

  • Issue ID 1270
    TagDecorator spec namespace modifications.

  • Issue ID 1401
    Advisory text for ExceptionHandler.

  • Issue ID 1402
    Explicitly declare that flow eagerness not supported.

  • Issue ID 677
    Document automatic UIPanel behavior for f:facet.

  • Issue ID 1095
    Description for “rendered” attribute for repeat and fragment.

  • Issue ID 1066
    Application.getNavigationHandler() and application element.

  • Issue ID 803
    VisitHint.EXECUTE_LIFECYCLE clarifications.

  • Issue ID 1217
    EnumConverter.getAsString() clarifications.

  • Issue ID 1356
    UIInput.processValidators() clarifications.

  • Issue ID 1424
    Public constants for source, behavior, and partial.event. See the Javadocs for javax.faces.component.behavior.ClientBehaviorContext, and javax.faces.conetxt.PartialViewContext.

  • Issue ID 1428
    API constants for jsf.js and javax.faces in JavaScript.

Issue ID 1250
Fix entries in table ExpressionLanguageFacility.adoc.

Resources
Expression Language
Configuration and Bootstrapping
Miscellaneous
Smaller Changes
  • Issue ID 1225
    Clarify requirements to support BCP-47 regarding localization. See RequestProcessingLifecycle.adoc

  • Issue ID 1429
    Add constructor to make wrapping easier.

  • Issue ID 1430
    Leverage Java SE 8 repeatable annotations where appropriate.

Backward Compatibility with Previous Versions

JSF 2.3 is fully backward compatible with previous releases of JSF, unless any of the following context-parameter values are specified. See UsingFacesInWebApplications.adoc for details.

  • javax.faces.ALWAYS_PERFORM_VALIDATION_WHEN_REQUIRED_IS_TRUE

  • javax.faces.DISABLE_FACESSERVLET_TO_XHTML

  • javax.faces.VIEWROOT_PHASE_LISTENER_QUEUES_EXCEPTIONS.

JSF 2.3 is fully backward compatible with previous releases of JSF unless a CDI managed bean is included in the application with the annotation @javax.faces.annotation.FacesConfig. See the javadocs for that annotation for details.

Breakages in Backward Compatibility

Changes between 2.1 and 2.2

This section gives the reader a survey of the changes between this version of the specification and the previous version, using the categories from the issue tracker at < https://github.com/jakartaee/faces/issues/ >.

Big Ticket Features

Other Features, by Functional Area

Components/Renderers
Larger Changes
  • Issue ID 479
    UIData supports the Collection Interface rather than List.

  • Issue ID 1134
    Add the "role" pass through attribute.

Smaller Changes
  • Issue ID 1080
    Warn about some important corner cases when UIComponent.findComponent() may not provide the expected results.

  • Issue ID 1068
    New section describing what happens with respect to partial processing during render response. See Render Response Partial Processing.

  • Issue ID 1067
    Spec clarifications. See the VDLDoc for cc:insertChildren, cc:insertFacet

  • Issue ID 1061
    Clarify that both Application.publishEvent() and the manual traversal based delivery are required for publishing the PostRestoreStateEvent.

  • Issue ID 1030
    Clarify docs for h:message h:messages

  • Issue ID 1023
    Modify JavaDoc to relax requirements for PostAddToViewEvent publishing

  • Issue ID 1019
    Modify spec for ResponseWriter.writeURIAttribute() to explicitly require adherence to the W3C URI spec

  • Issue ID 997
    javax.faces.component.ComponentSystemEvent: Override isAppropriateListener so that it first asks the listener, "are you a ComponentSystemEventListener", then, if not, asks super.isAppropriateListener()

  • Issue ID 984
    Component Context Manager, see javax.faces.component.visit.ComponentModificationManager.

  • Issue ID 943
    See javax.faces.view.ViewDeclarationLanguageWrapper

  • Issue ID 784
    Deprecate the CURRENT_COMPONENT and CURRENT_COMPOSITE_COMPONENT attributes

  • Issue ID 599
    Make it possible to programmatically create components in the same way as they are created by Facelets. See javax.faces.application.Application.createComponent(FacesContext, String taglibUri, String tagName, Map attrs)

  • Issue ID 703
    Make "value" optional for @FacesComponent.

  • Issue ID 585
    outputText and inputText do not render children by default

  • Issue ID 550
    OutputStylesheet "media" attribute

  • Issue ID 1125
    javax.faces.application.Application event subscription clarifications.

Lifecycle
Larger Changes
  • Issue ID 949, 947
    Give JSF the ability to correctly handle browsing context (tab, browser window, pop-up, etc). See javax.faces.lifecycle.ClientWindow.

  • Issue ID 758 and 1042

    A jsf-api/src/main/java/javax/faces/component/UIViewAction.java

    • The heart of this changebundle, this class came over from the JBoss Seam Faces Module, but I’ve rewritten most of the javadoc.

    M jsf-api/src/main/java/javax/faces/event/PhaseId.java

    • new methods

    • public String getName()

    • public static PhaseId phaseIdValueOf(String phase)

    Change Default NavigationHandler Algorithm to account for UIViewAction

  • Issue ID 1062 and 802
    File Upload

  • Issue ID 766
    Events from the flash

  • Issue ID 1050
    Add support for delay value in options for Ajax requests

Smaller Changes
  • Issue ID 1129
    In validate(), clarify that setSubmittedValue() null must be called if validation succeeds.

  • Issue ID 1071 Add FlashFactory. See Delegating Implementation Support.

  • Issue ID 1065
    When calculating the locale for the resource library prefix, if there is a UIViewRoot, use its locale first, otherwise, just use the Applications’s ViewHandler’s calculateLocale() method. See Libraries of Localized and Versioned Resources

  • Issue ID 1039
    In ApplicationWrapper, mark things as deprecated

  • Issue ID 1028
    Deprecate StateManager, point to StateManagementStrategy. In StateManagementStrategy, require the use of the visit API to perform the saving.

  • Issue ID 993
    Wrapper for ActionListener

  • Tweak circumstances for skipping intervening lifecycle phases in the case of view metadata Issue ID 762

    Section 2.2.1. Now has this text.

    • Otherwise, call getViewMetadata() on the ViewDeclarationLanguage instance. If the result is non-null, call createMetadataView() on the ViewMetadata instance. Call ViewMetadata.getViewParameters(). If the result is a non-empty Collection, do not call facesContext.renderResponse(). If the result is an empty collection, try to obtain the metadata facet of the UIViewRoot by asking the UIViewRoot for the facet named UIViewRoot.METADATA_FACET_NAME. This facet must exist. If the facet has no children, call facesContext.renderResponse(). Otherwise, none of the previous steps have yielded the discovery any of metadata, so call facesContext.renderResponse().

  • Issue ID 566
    UIOutput.getValue() value returns.

  • Issue ID 220
    In web-partialresponse_2_2.xsd, require that the <partial-response> element has an “id” attribute whose value is the return from UIViewRoot.getContainerClientId().

Platform Integration
  • Issue ID 763
    Change Managed Bean Annotations to account for new injectability requirements.

  • Issue ID 976
    In Javadoc for “Faces Managed Bean Annotation Specification For Containers Conforming to Servlet 2.5 and Beyond”, indicate that javax.faces.bean will be deprecated in the next version.

  • Issue ID 1087
    Introduce CDI based @ViewScoped annotation.

Facelets/VDL
Larger Changes
  • Issue ID 1001
    Allow cc and non-cc components in one taglib

    A jsf-api/doc/web-facelettaglibrary_2_2.xsd

    First change to the facelet taglib schema in 2.2: introduce the ability to declare a resource which will be the composite component for a tag. Now, before you get all excited about what conventions we can use to make this easier, let me stop you right there. Here is a summary of the ease of use story regarding taglib files.

    • The 80/20 rule says we should make taglib files optional most of the time. Here are the 80% cases.

    • Employs the cc naming convention http://java.sun.com/jsf/composite/<libraryName>

    • The user employs a java component has a @FacesComponent on it that declares the necessary metadata. Issue ID 594

    Here are some of the cases where you must have a taglib file, the 20% cases.

    • If you want to employ a cc with a namespace other than http://java.sun.com/jsf/composite/<libraryName> you need to have a taglib file that declares <composite-library-name>. Currently you must not detlare any <tag> elements in such a taglib file. All the tags in such a library must come from the same resource library.

    • If the user is not employs a java component but is not using @FacesComponent.

    This patch introduces the following syntax.

    <?xml version="1.0" encoding="UTF-8"?>
    <facelet-taglib xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
        http://java.sun.com/xml/ns/javaee/web-facelettaglibary_2_2.xsd"
        version="2.2">
      <namespace>test</namespace>
      <tag>
        <tag-name>layout</tag-name>
        <resource-id>myCC/whatever.xhtml</resource-id>
      </tag>
    </facelet-taglib>

    Where <resource-id> is a valid resource identifier as specified in section 2.6.1.3.

  • Issue ID 548
    Require additional check to handle the case where, in one resource library, there are both localized and non-localized resources. See Libraries of Localized and Versioned Resources.

Smaller Changes
  • Issue ID 1038
    Declare an annotation corresponding to the javax.faces.FACELETS_RESOURCE_RESOLVER application configuration parameter. See Requirements for scanning of classes for annotations and Application Configuration Parameters.

  • Issue ID 1082
    Account for DOCTYPE discrepancy between server side representation of Facelet VDL files, which are proper XHTML, and processed files which are sent to the client, which now, by default, are HTML5 HTML syntax files. See The facelets-processing element.

  • Fix incorrect VDLDoc Issue ID 967 f:selectItems itemValue description incorrect.

  • Issue ID 922
    Remove maxlength from f:viewParam

  • Issue ID 998
    Document that ui:fragment should not be bound to a bean with wider than request scope, document that the type of the property must extend from UIComponent.

  • Issue ID 999
    Changes to "template" attribute requiredness for ui:decorate and ui:composition

  • Issue ID 901
    Deprecate “targets” concept.

  • Issue ID 1088
    add short-name to schema.

  • Issue ID 746
    Missing method-signature element in taglib xsd.

Spec Clarifications
  • Issue ID 1136
    In ExternalContext.dispatch(), clarify what is to be done if getRequestDispatcher() returns null.

  • Issue ID 1132
    Replace literal strings with symbolic constants where possible.

  • Issue ID 1127
    State Saving Serializability concerns.

  • Issue ID 1114
    javax.faces.view.facelets.Facelet.apply() spec version reference error.

  • Issue ID 1100, 1097
    HTML5 id attribute sensitivity

  • Issue ID 1064
    In The facelets-processing element, clarify that in XML and JSPX modes, only the CDATA section start and end tags, not the entire CDATA section and contents, should be consumed.

  • Issue ID 1063
    javax.faces.component.UIViewParameter.getSubmittedValue() return value.

  • Issue ID 1058
    ui:repeat tag size attribute

  • Issue ID 1036
    In ValueExpression properties, clarify which attributes are expression enabled,

  • Issue ID 1035
    Change section FacesMessage to clarify the meaning of having FacesMessage instances on the FacesContext.

  • Issue ID 1026
    f:ajax event attribute is String (not VE)

  • Issue ID 1014

    12.1.3

    • The specification for the context-param that declares the list of TagDecorator implementations to the runtime should have always been javax.faces.FACELETS_DECORATORS. Prior to this revision, the name of this context param was incorrectly specified as javax.faces.DECORATORS. The reference implementation has always used the correct name, however.

  • Issue ID 1010
    Check existing usages of the state saving method parameter to ensure case insensitivity.

  • Issue ID 1004

    M usingFacesInWebapps.fm

    • 12.1.3 Set default for javax.faces.FACELETS_BUFFER_SIZE to be 1024.

  • Issue ID 998
    Additional clarification about binding attribute in VDLDocs

  • Issue ID 915, 1015
    Non-normative text about http methods and prefix mapping

  • Issue ID 2740
    In Component Bindings, clarify a corner case regarding bean scope and component binding.

Resources
Larger Changes
  • Issue ID 809
    This commit introduces a cleaner contract for allowing views to be loaded from the Filesystem (including inside of JAR files). All VDL resources must be loaded using ResourceHandler.createViewResource().

Smaller Changes
Expression Language
  • Issue ID 1092

    Remove text from MethodExpressionValueChangeListener and MethodExpressionActionListener regarding wrapping any exception thrown by the invoked method being wrapped in an AbortProcessingException. Such a requirement is incorrect and should not have been introduced.

    In section ExceptionHandler, add AbortProcessingException, to the list of exceptions that do not get to the ExceptionHandler.

  • Issue ID 1043
    When publishing a ComponentSystemEvent, ensure the EL current component is pushed correctly

  • Issue ID 1164
    If running in a container that supports EL 3.0, add the necessary ELResolvers. See Stream, StaticField, Map, List, Array, and Bean ELResolvers.

Configuration and Bootstrapping
Miscellaneous

Backward Compatibility with Previous Versions

Faces 2.2 is backwards compatible with Faces 2.1 and 2.0. This means that a web-application that was developed to run with Faces 2.1 or 2.0 won’t require any modification when run with Faces 2.2 except in the cases described in the following section.

Breakages in Backward Compatibility

  • Issue ID 1092
    Due to an error in previous versions of the specification, exceptions were silently being swallowed that now will bubble up to the exception handler. Code that was relying on this incorrect behavior may need to be modified to account for fixing this problem.

  • Issue ID 745

    5.6.2.2 Table 5-11. Make the following changes to the spec for Composite Component Attribute ELResoler

    • Modify getType() according to new specification language.

    • Require the implementation of containsKey() on the Map.

      • containsKey(): If the attributes map contains the key, return true. Otherwise, if a default value has been declared for the attribute, return true. Otherwise, return false.

    New text dealing with <cc:attribute>

    • Any additional attributes on <cc:attribute/ > are exposed as attributes accessible from the getValue() and attributeNames() methods on PropertyDescriptor. The return type from getValue() must be a ValueExpression with the exception of the getValue("type"). The return type from getValue("type") must be Class. If the value specified for the type attribute of <cc:attribute/> cannot be converted to an actual Class, a TagAttributeException must be thrown, including the Tag and TagAttribute instances in the constructor.

Yes, this is a backwards incompatible change, but because the usecase is so specific, and the performance benefit so substantial, it was judged to be worth the cost.

Changes between 2.0 Rev a and 2.1

Document that the unprefixed namespace must pass through.

Update schema for 2.1

The only new element is <facelet-cache-factory>. See the full schema in the Javadoc section of the documents.

Change Restore View Phase

Change Restore View to require a call to ViewHandler.deriveLogicalViewId() before trying to find the ViewDeclarationLanguage.

Document deriveLogicalViewId().

Changes between 2.0 Final and 2.0 Rev a

Global changes

ExceptionQueuedEvent

The specification incorrectly refers to the ExceptionQueuedEvent as the ExceptionEvent. All instances should be replaced, as there is no such class ExceptionEvent in JSF.

Usage of the term "page" in the JSF 2.0 spec

This might be kind of nit-picky, but there are several occurrences of the term "Facelet page" in the JSF 2.0 spec, but I’d like to set forth the argument that the term "Facelet document" or "Facelet view" would be more appropriate, depending on context. Similarly, the spec uses the term "Composite component markup page" which isn’t always appropriate either. Better to call it a "Composite component markup document" or something like that.

All Facelet XHTML files are documents, but not all Facelet XHTML files are pages. There is a built-in bias to the word "page" that assumes the markup output will be rendered as a "web page" which is not always the case. In the case of portlets, the rendered output is a fragment of markup (normally a <div>…​</div>). In the case of a custom renderkit, the rendered output might be some mobile device. In the case of ICEfaces, the rendered markup is a server-side DOM tree. In the case of a composite component, a Facelet XHTML file is not a page, but a "Composite Component markup document" (or definition) file.

For example.. Instead of a "Facelet Page", I think the following should be called a "Facelet Document" or a "Facelet View" (since the f:view tag is optional, but implied)

<!DOCTYPE html>
<html xmlns:f="jakarta.faces.core"
      xmlns:h="jakarta.faces.html">
  <h:head>
    ...
  </h:head>
  <h:body>
    ...
  </h:body>
</html>

But in the case of Portlets, the <html> , <head>, and <body> tags are forbidden. The equivalent "Facelet Document" or "Facelet View" for portlets would look like this:

<f:view xmlns:f="jakarta.faces.core"
        xmlns:h="jakarta.faces.html">
  ...
</f:view>

Front Matter

Change Sun logo to Oracle Logo. Sun postal address to Oracle postal address, and Sun phone number to Oracle phone number

Update spec license.

Chapter 2

Per Andy Schwartz recommendation, loosen the spec requirements for the delivery of the PostRestoreStateEvent to be "somewhere during RestoreView".

Suggestion: Change to

Validation Error: Length is less than allowable minimum of 5.

Change "leas" to "least"

JSR 303 Bean Validation needs to reference "Bean Validation Integration" section

While reading section 2.5.7, one becomes very disappointed with the limited about of information that it provides. But section 3.5.6 provides more information, so the recommendation is that these sections reference each other, or perhaps are combined in some way if that makes sense.

Tighten spec for the localePrefix, libraryName, and resourceVersion segments of the resource identifier.

Chapter 3

Clarify meaning of "javax.faces.bean" in Bean Validator Activation

Section 3.5.6.1 says:

"If Bean Validation is present in the runtime environment, the system must ensure that the javax.faces.Bean standard validator is added with a call to Application.addDefaultValidatorId()"

But the reader of the Spec has no idea what the "javax.faces.Bean" standard validator is, within the context of this paragraph. Recommend adding some verbiage that says that javax.faces.Bean is the validatorId of the standard JSR 303 validator of the JSF 2.0 API, which equates to the javax.faces.validator.BeanValidator class as mentioned in Section 10.4.1.4.

Need to be consistent between Declarative Listener Registration of the JSF 2.0 Spec and the VDLDoc for f:event

Section 3.4.3.4 of the JSF 2.0 Spec reads:

The method signature for the MethodExpression pointed to by the listener attribute must match the signature of

javax.faces.event.ComponentSystemEventListener.processEvent().

And the VDLDocs for f:event read:

(signature must match public void listener(javax.faces.event.ComponentSystemEvent event) throws javax.faces.event.AbortProcessingException)

Both of these are true, and indeed saying the same thing. But I think it would be helpful to say BOTH things, in BOTH documents.

Typo in Declarative Listener Registration of the JSF 2.0 Spec regarding "beforeRender"

Section 3.4.3.4 of the JSF 2.0 Spec has this example:

<h:inputText value="#{myBean.text}">
  <f:event type="beforeRender" listener="#{myBean.beforeTextRender}" />
</h:inputText>

But "beforeRender" is a typo. The correct value is "preRenderComponent" as stated in the f:event VDLDocs.

Remove references to UInput.encodeEnd(). Not for a very long time has this method been used to instigate validation.

Section 3.6.2.1 of the Spec indicates that the "hidden" property of the javax.bean.FeatureDescriptor is to appear as an attribute for tags like cc:actionSource, cc:attribute, cc:facet, and cc:interface but the VDLDocs do not declare that the "hidden" property is available.

Chapter 4

Remove text pertaining to PostRestoreStateEvent, rely instead on text in setion 2.2.1.

Chapter 7

getNavigationCase should return NavigationCase and not void.

Add faces-include-view-params

Fix typo the specified createView() should be called in renderView() and restoreView().

Chapter 10

Need to change "confirm with" to "conform with".

Confusing verbiage in table 10-1 of JSF 2.0 spec regarding the word "template"

In table 10-1, it correctly says that "page templating" is not a feature of JSP.

But later on in the table, it says "Expressions in template text cause unexpected behavior when used in JSP."

Somehow there needs to be an explanation of the distinction of "page templating" and "template text" here. Right now it kind of reads as a contradiction.

Add an assertion to section 10.3.1 stating that EL expressions that appear in the facelet XHTML page must appear in the rendered view as if they were the right hand side of the value attribute of an at the same point in the page as the EL expression

Section 10.3.2. Correct xref to point to section in appendix that includes the facelet taglib schema.

Correct xref to point to section in appendix that includes the facelet taglib schema.

VDLDocs

See Facelet Templating Tag Library, and Jakarta Tags Core and Function Tag Libraries. Refer the reader to the "VDLDocs" (View Declaration Language Documentations).

Chapter 13

Redundancy in Partial View Processing of the JSF 2.0 Spec

Section 13.4.2 of the JSF 2.0 spec has this sentence:

The request contains special parameters that indicate the request is a partial execute request or a partial execute request that was triggered using Ajax

This needs clarification—does this mean to say:

partial execute request (not triggered by Ajax) or a partial execute request (that was triggered using Ajax)

"Execute portions" of the JSF request processing lifecycle in the JSF 2.0 Spec

Section 13.4.2 reads:

Although the diagram in Section 13.4 Partial View Traversal˝ depicts the execute˝ portion as encompassing everything except the Render Response Phase˝, it really is the Apply Request Values Phase˝, Update Model Values Phase˝ and Process Validations Phase˝.

Why does the diagram include the INVOKE_APPLICATION phase if it’s not "really" considered to be part of the execute portions?

Chapter 14

Initiating an Ajax Request Typo in table 14.2.2 of the JSF 2.0 Spec

Table 14.2.2 reads:

"execute" phase

But in order to be consistent with the rest of the spec, it should read:

"execute" portion

Also, the same goes for "render" in that the word "portion" should be used instead of "phase".

Change responseTxt to responseText.

Table 14.3: Reorder rows

Appendix A Metadata

Update schema to remove partial-traversal, as well as fixing 768.

VDLDoc changes

Typo in f:selectItems VDLDocs

Change "mest" to "must"

Need clarification on execute attribute of f:ajax

The VDLDocs for f:ajax say "Identifiers of components" but, for some reason, it wasn’t obvious to me that this term referred to the "id" attributes of components. The recommendation isthat this be clarified to say "list of <b>id</b> attribute values" instead. Also, the value of an id attribute like "mycomponent" or something should be added to an example that includes a keyword…​ something like this: "@this componentone componenttwo"

Spelling error in VDLDocs for f:ajax

This one from Lincoln:

See the "onerror" attribute

There is an extra 'e' → "oneerror"

Need clarification on required attribute in VDLDocs for tags that got a new "for" attribute in JSF 2.0

The VDLDocs correctly have green for the new "for" attribute, but the "required" column says false, when that’s not always the case.

For example, with f:actionListener the VDLDocs say that that it is not required. However, when the tag is used as a child of a Composite Component, then the for attribute is indeed required. This would be true of all tags like that, such as f:convertDateTime, f:convertNumber, etc.

Uppercase typo in VDLDocs for f:event

Change uppercase "P" to lowercase for: PostAddToView for the f:event VDLDocs

Need to change "JSP" to "Facelets" in "Body Content" of VDLDocs

Search for "JSP" on the f:event VDLDocs. My suspicion is that this is a problem across the board.

Need clarification in VDLDocs for f:metadata

In the VDLDocs for f:metadata, recommend changing:

"This tag must reside within the top level XHTML file for the given viewId, not in a template"

to this:

"This tag must reside within the top level Facelet view, or in a template-client, but not in a template"

Also, it needs to be clarified that the page01.xhtml example is a template-client. So recommend changing this:

"viewId XHTML page, page01.xhtml"

to this:

"template-client XHTML page, page01.xhtml"

Missing description in VDLDocs for name attribute of f:viewParam

The VDLDocs for f:viewParam are missing documentation of the "name" attribute, which is pretty important since it is required.

VLDDocs on "for" attribute of f:viewParam claim it can be used in a CC

The VDLDocs for f:viewParam claim that the "for" attribute is supported. I just checked Mojarra’s jsf-api and UIViewParameter.java does not support the "for" attribute, since it does not have a getter/setter for "for" like HtmlOutputLabel does. There are restrictions on f:viewParam such that it may only be used inside of f:metadata, and f:metadata may only be used inside of f:view. So that disqualifies the f:viewParam tag from being able to be used inside of a Composite Component. Therefore I recommend that the documentation of the "for" attribute be totally removed.

Miscellaneous VDLDoc items
  • VDLDocs for "execute" attribute of f:ajax say (must evaluate to java.lang.Object) but then say "Evaluates to Collection"

  • VDLDocs f:selectItem lists the new JSF 2.0 "noSelectionOption" but is not colored green to indicate "new in JSF 2.0" and the link for f:selectItem in the navigation frame needs to be orange

  • VDLDocs for f:validateBean should have all of its attributes in green to indicate "new in JSF 2.0" since it is a new tag.

  • VDLDocs for f:validateRegex has a typo in the description which reads "RegexpValidator" rather than "RegexValidator"

  • In spec, the "Changes between 1.2 and EDR2" section refers the reader to section 3.5.2 for the addition of "javax.faces.RegularExpressionValidator" but actually it should be section 3.5.5

  • VDLDocs for h:button say that the outcome attribute is not required, but really it should be required otherwise there is no purpose of f:button—you would end up navigating back to the current view. The whole point of f:button is to perform navigation to a different view that potentially contains view parameters. Why have a bookmarkable URL back to itself?

  • VDLDocs for h:button don’t mention a disabled attribute, but the h:link one does have the disabled attribute. My guess would be that both should have this attribute?

  • VDLDocs for h:outputScript and h:outputStylesheet should indicate that even though the UIOutput class implements the ValueHolder interface, the coverter and value attributes are basically ignored by the renderers, since the value attribute has no meaning. This is basically a design flaw—a new class named UIOutputResource should have been created instead of UIOutput being reused.

  • VDLDocs for h:outputScript and h:outputStylesheet should indicate that the "name" attribute is required, since section 2.6.1.3 implies that this is the case with the following resource pattern:

  • VDLDocs for h:outputScript needs to have all the possible values for the target attribute documented. I think the only valid values are "head", "body", and "form"

  • VDLDocs for h:graphicImage has a dead hyperlink to "Common Algorithm for Obtaining A Resource to Render

  • VDLDocs for h:selectManyCheckbox indicate orange for the collectionType and hideNoSelectionOption attributes but they should be green to indicate "new in JSF 2.0"

  • VDLDocs for h:selectManyCheckbox says that the return type must evaluate to a String, but that’s not entirely true. It can also evaluate to a concrete class that implements java.util.Collection

  • VDLDocs for ui:param have two "name" attributes specified. The second one should be the "value" attribute

Should TLDDocs now be VDLDocs?

The Spec introduces this term VDLDocs (which as I said in the other email, was formerly PDLDocs), but it also refers the reader to the TLDDocs. Should we just settle on VDLDocs as the standard term throughout the Spec?

Typo in VDLDocs for f:event.

The VDLDocs for f:event specify a "name" attribute, but the Description column of the page talks about a "type" column (not "name"), which would be consistent with Section 3.4.3.4 of the Spec which talks about a "type" column.

Jim Driscoll verified that there is a doc bug in the VDLDocs for f:event and that the "name" attribute is actually "type"

Accepted Changes from JCP Change Log for JSF 2.0 Rev a

The referenced spec public issue number can be found in the issue tracker at
https://github.com/jakartaee/faces/issues/

ID

Category

Description

Fixed in Source Code Repository of Specification

Issue

C002

Errata

Section 5.6.2.2 is out of sync with the current resolver implementation.

yes

Issue ID:848

C004

Errata

RenderKitDoc for OutcomeTarget Renderers are incorrect with respect to intended design. Refer to appendixB-changelog.html#UNKNOWNChangeC006 in the footnotes section below.

yes

Issue ID:823

C007

Errata

Section 11.4.7 "Ordering". After the sentence "The <others /> element must be handled as follows" add a bullet point: "The <others /> element represents a set of application configuration resources. This set is described as the set of all application configuration resources discovered in the application minus the one currently being processed, minus the application configuration resources mentioned by name in the <ordering /> section. If this set is the empty set, at the time the application configuration resources are being processed, the <others > element must be ignored."

yes

Issue ID:824

C008

Errata

taglib docs for cc:interface are missing documentation for componentType attribute.

yes

Issue ID:849

C011

Errata

Section 3.6.2.1 "Composite Component Metadata". Add BehaviorHolderAttachedObjectTarget after iii. ActionSource2AttachedObjectTarget

yes

Issue ID:825

C012

Errata

Javadocs for ResourceHandler.createResource(String resourceId) need to me ammended to state that if there is an error in argument resourceId, null must be returned by this method.

yes

Issue ID:851

C013

Errata

PDL DOCS: f:event listener attribute clarification:Change description to: "A method expression that JSF invokes when an event occurs. That event is specified with the name attribute."

yes

Issue ID:586

C015

Errata

UIViewRoot.setBeforePhaseListeners() removed the statement that all phases including RestoreView will have their beforePhaseListeners called. Reverted to the way it was in 1.2

yes

Issue ID:826

C016

Errata

Section 2.6.2.1 Relocatable Resources: code snippet: <f:view…​./> should be <f:view…​>

yes

Issue ID:565

C017

Errata

UISelectItem doesn’t mention itemEscaped.

yes

Issue ID:430

C018

Errata

ViewDeclarationLanguage.retargetAttachedObjects() misses talking about Behaviors

yes

Issue ID:827

C021

Errata

ui:insert missing existing "name" attribute, implemented, tested, but not documented

yes

Issue ID:667

C022

Errata

f:valueChangeListener missing "for" attribute. Implemented, tested, but not documented

yes

Issue ID:828

C023

Change

in facelets VDLdoc, mark f:verbatim and f:subview as deprecated

no

Issue ID:852

C024

Errata

Add an assertion to section 10.3.1 stating that EL expressions that appear in the facelet XHTML page must appear in the rendered view as if they were the right hand side of the value attribute of an <h:outputText> at the same point in the page as the EL expression

yes

Issue ID:829

C027

Errata

web-facelettaglibrary_2_0.xsd type incorrect for composite-library-name. Should be javae:string

no

Issue ID:854

C028

Errata

ui:remove VDLDoc has attribute with no name

no

Issue ID:842

C029

Errata

ui:param has attribute duplicated. One of them should be "value"

yes

Issue ID:855

C030

Errata

RenderKit Docs javax.faces.CompositeFacet change " The implementation of encodeBegin(), must obtain " to be " The implementation of encodeChildren(), must obtain "

no

Issue ID:843

C031

Errata

VDL docs state that cc:attribute has a target attribute with required="true". This attribute is not really required on cc:attribute.

yes

Issue ID:644

C032

Errata

Mention in spec that Objects put in view scope may need to be Serializable

yes

Issue ID:830

C033

Errata

Modify the javadoc for ResourceHandler to state that for resources residing at META-INF/resources/<resourceidentifier>. The implementation is not required to support the optional libraryVersion and resourceVersion segments

yes

Issue ID:844

C034

Change

Modify table 5-10 to state that implicit object cc returns the current composite component, relative to the composite component markup page in which the expression appears

yes

Issue ID:831

C035

Errata

3.6.2.1 Modify composite component metadata specification to state that, within the cc:interface element, the following attributes are not available unless ProjectStage is Development: displayName, expert, hidden, preferred, shortDescription

yes

Issue ID:832

C037

Errata

UIComponent.restoreState() javadocs must be changed to say NPE is thrown if context is null, but no action is taken if state argument is null

yes

Issue ID:845

C040

Errata

VDLDocs for f:metadata. Don’t mention f:view. State, "This tag must reside within the top level facelet page whose filename corresponds ot the viewid being loaded."

yes

Issue ID:856

C043

Errata

Document SEPARATOR_CHAR in section 11.1.3 where all the other context-params are documented

yes

Issue ID:833

C044

Errata

Section 11.4.6 doesn’t include ViewDeclarationLanguage, VisitContextFactory, ExceptionHandlerFactory, PartialViewContext, TagHandlerDelegateFactory as decoratable

yes

Issue ID:834

C046

Errata

Section 10.4.1.1 specifies the use of AjaxBehaviors pushBehavior but AjaxBehaviors is an implementation detail (the class exists under com package)

yes

Issue ID:836

C047

Errata

Add "defaults" for "execute", "render" AjaxBehavior in VDLDocs.

yes

Issue ID:568

C048

Errata

JSP should not have f:viewParam. Facelets f:viewParam must have name attribute.

yes

Issue ID:656

C049

Errata

Spec section 3.2.5 is empty. Fix that

yes

Issue ID:835

C050

Errata

Spec for UIComponent.setParent() incomplete

yes

Issue ID:837

C054

Errata

f:event name attribute should be type.

yes

Issue ID:639

C058

Errata

Section 14.4.1: Table 14-4: responseTxt should be responseText. Table 14-4: Add status property; Table 14-4: There is no "name" property. Table 14-3: reorder "status" values to be in chronological order. Section 14.4.1.1: Fix use case.

yes

Issue ID:642

C060

Change

Replace the last sentence in the javadoc for FacesServlet.service() to say "The implementation must make it so FacesContext.release() is called within a finally block as late as possible in the processing for the JSF related portion of this request".

yes

Issue ID:846

C061

Change

Non-normatively document that JavaBeans PropertyEditors will be used for EL Coercion. Mention this in the context of JSF converters

yes

Issue ID:838

C062

Change

In 3.1.5, explicitly mention not to use view scope

yes

Issue ID:839

C063

Change

7.4.1 Clarify that, in the case of navigation actions, an empty string should be treated the same way as null: stay on the same page.

yes

Issue ID:747

C064

Change

Correct StateHolder.setTransient JavaDoc (specified backwards)

yes

Issue ID:840

C065

Change

Correct typos in Composite.tld (for pdldocs). Specifically, quotes around actionListener, method-signature (spelling). Also clarify the default value "false" for "required" attribute.

yes

Issue ID:841

C066

Change

Specify that the Component Resource container facet must be marked transient. Specifically, the JavaDocs for UIViewRoot.getComponentResources should include: "Set the transient property of the facet to true."

yes

Issue ID:800

C068

Change

Modify the facelet taglib xsd so that older versions of taglibs are acceptable.

yes

Issue ID:744

C069

Change

Make sure VDLDocs for f:event list event all possible event types

yes

Issue ID:712

C072

Errata

Neither applyNextHandler of DelegatingMetaTagHandler or nextHandler of TagHandler are documented.

yes

Issue ID:780

C073

Errata

Specify f:ajax execute/render id behavior in VDLDocs (as outlined in Section 10.4.1.1 of the spec).

yes

Issue ID:567

C074

Errata

<view-param> has no business being a child of <redirect> and should be renamed to <redirect-param>.

yes

Issue ID:698

C075

Errata

includeViewParams implicit navigation flag should be faces-include-view-params.

yes

Issue ID:699

C077

Errata

Event broadcasting should apply to Behaviors (not just ClientBehaviors).

yes

Issue ID:798

C078

Errata

PostAddToViewEvent delivery specification needs clarification. Clarify UIComponent.getParent and getChildren for consistency.

yes

Issue ID:805

C079

Errata

RenderKit Docs - TableRenderer:Clarification - the docs say to render the footer the same as the header which causes the problem.

yes

Issue ID:255

C080

Errata

RenderKit Docs - ButtonRenderer Encode behavior w/r/t onclick attribute - should not be passthrough attribute.

yes

Issue ID:257

C081

Errata

h:message "for" attribute is mis-specified:"for" attribute should be relative id (not clientid).

yes

Issue ID:266

C082

Errata

clarify whether expression of binding-attribute of f:xxxxListener should be evaluated on postback.

yes

Issue ID:320

C083

Errata

Option rendering, specifically when dealing with SelectItemGroups, is too generic.

yes

Issue ID:420

C084

Errata

submittedValue get/set methods underspecified

yes

Issue ID:434

C085

Errata

Current wording in renderkit docs leads to double encoding of query parameters

yes

Issue ID:436

C086

Errata

SelectManyCheckBox Clarification

yes

Issue ID:466

C087

Errata

PDL document for JSTL(Facelets) has the incorrect URI for the NameSpace.

yes

Issue ID:509

C088

Errata

API docs missing for ExceptionEventContext.

yes

Issue ID:515

C089

Errata

cc:attribute component documentation for the attribute type should be for attribute method-signature.

yes

Issue ID:524

C090

Errata

The UML Diagram for javax.faces.event is out of date.

yes

Issue ID:525

C091

Errata

Minor typo in the Interface BehaviorHolder API.

yes

Issue ID:534

C092

Errata

Two references to the itemLabelEscaped attribute.

yes

Issue ID:536

C093

Errata

Missing class description for javax.faces.event.PostValidateEvent and javax.faces.event.PreValidateEvent.

yes

Issue ID:537

C094

Errata

Section 3.7.5 typo - ClientBehavorHolder should be ClientBehaviorHolder.

yes

Issue ID:540

C095

Errata

Section 4.1.3 typo - NamingContaier should be NamingContainer.

yes

Issue ID:541

C096

Errata

API Docs: Application.publishEvent: Docs say to throw NPE if any of the arguments is null. However, sourceBaseType arg can be null.

yes

Issue ID:553

C097

Errata

Facelets TLD Docs: Missing "for" attribute for "message" and "messages" tags.

yes

Issue ID:558

C099

Errata

ResourceHandler docs: Clarify that relative paths are disallowed in library names.

yes

Issue ID:577

C100

Errata

Renderkit Docs: h:link - Formatting - add paragraphs

yes

Issue ID:588

C101

Errata

Spec Section 2.5.9: Fix Grammar: "The first client behavior to provided by the JSF specification is the AjaxBehavior." should be: "The first client behavior provided by the JSF specification is the AjaxBehavior."

yes

Issue ID:590

C102

Errata

Spec Section 9.4 doesn’t list all the validation tags and it lists the validateDoubleRange tag twice.

no

Issue ID:591

C103

Errata

VDLDocs and Spec section 3.6.2.1 have component:actionSource target attribute with commas as delimiters - should be "space" as delimiter.

yes

Issue ID:592

C104

Errata

Spec Section 7.4.1: getNavigationCase should return NavigationCase and not void.

yes

Issue ID:605

C105

Errata

Spec Section 10.4.1.4 says: f:validateBean should extend validateHandler. Should be ValidatorHandler.

yes

Issue ID:615

C106

Errata

Typo: Pages in the TLD docs says "JSF 2.0 Page Decraration Language". Should be "Declaration".

yes

Issue ID:617

C107

Errata

Typos: Table 14-1, 14-2, page 14-3.

yes

Issue ID:629

C108

Errata

UIData.invokeOnComponent docs need to be updated to include handling of column level facets.

yes

Issue ID:632

C109

Errata

Spec Section 3.5.6.1 needs to be corrected to state that default validators are added during tag execution time.

yes

Issue ID:635

C110

Errata

validateBean and validateRequired tags need to be removed from the Jakarta Server Pages PDL documentation

yes

Issue ID:645

C111

Errata

faces.ajax.response update element clarification needed in JavaScript docs.

yes

Issue ID:646

C112

Errata

Spec Section 10.4.1.1: Clarify what happens when nesting and wrapping f:ajax tags collide.

yes

Issue ID:652

C113

Errata

Typo: Spec Section 8.3.1: "renderkit-id" should be "render-kit-id" and "renderkit" should be "render-kit".

yes

Issue ID:660

C114

Errata

Add "rendered" attribute to VDL docs for ui:component and ui:fragment.

yes

Issue ID:661

C115

Errata

JavaDocs for UIComponent.processValidators is incomplete. It should mention popComponentFromEL.

yes

Issue ID:664

C116

Errata

Dead link in VDL docs.

yes

Issue ID:666

C117

Errata

Spec Section 2.5.2.4: Standard messages for LengthValidator are confusing.

yes

Issue ID:668

C118

Errata

Spec/pdldocs don’t say what the default is for "target" in h:outputScript.

yes

Issue ID:673

C119

Errata

partial-view-context-factory is only mentioned in the schema part of the spec. Houls be added to Spec Section 13.4.2.

yes

Issue ID:705

C120

Errata

Specification edits needed

no

Issue ID:714

C121

Errata

Typo - Spec Section 7.5.2: "ViewHanlder" should be "ViewHandler"; "renderView" and "restoreView" methods should call "ViewDeclarationLanguage.renderView" and "ViewDeclarationLanguage.restoreView".

yes

Issue ID:729

C122

Errata

Spec Section 2.6.1.3: Specify that a libraryName or resourceName contains only XML NameChar, but not a colon; a libraryName or resourceName does not match the regex "[0-9]+(_[0-9]+)* or [A-Za-z]{2}(_[A-Za-z]{2}(_[A- Za-z]+)*)?"

yes

Issue ID:740

C123

Errata

Typos in PDLDocs for ui:repeat

yes

Issue ID:743

C124

Errata

Remove "partial-traversal" application element from the spec as it does not exist in the schema.

yes

Issue ID:767

C125

Errata

Add mssing ID attributes to schema for: faces-config-orderingType,faces-config-ordering-orderingType,faces-config-absoluteOrderingType,faces-config-default-valueType,faces-config-from-view-idType,faces-config-client-behavior-rendererType,faces-config-behaviorType,faces-config-value-classType,faces-config-rendererType

yes

Issue ID:768

C126

Errata

UIInput JavaDocs: Specify the handling of conversion failures.

yes

Issue ID:775

C127

Errata

EditableValueHodler JavaDocs: Missing "@Since 2.0" for "resetValue" method.

yes

Issue ID:779

C128

Errata

VDL documentation for f:selectItem references the "escape" attribute. It should be "itemEscaped".

yes

Issue ID:788

C129

Errata

Specify description for "f:param" "disabled" attribute.

yes

Issue ID:794

C130

Errata

Simplify PostRestoreStateEvent delivery requirements.

yes

Issue ID:806

Changes in versions below 2.0 Final

See the "JavaServer™ Faces Specification Version 2.3" for these changes. The change log items are removed from this document in Jakarta Faces 3.0.