Target Milestone 2.0 Rev A
The source code repositories for the spec to which this change-log applies are:
* svn url for generated portion of spec, and implementation
* CVS info for non-generated portion of spec: cvs -d :pserver:USERNAME@cvs.dev.java.net:/cvs javaserverfaces-spec-eg
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 Spec Public:848
C004 Errata RenderKitDoc for OutcomeTarget Renderers are incorrect with respect to intended design. Refer to ChangeC006 in the footnotes section below. yes Spec Public:823
C007 Errata Section JSF.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 Spec Public:824
C008 Errata taglib docs for composite:interface are missing documentation for componentType attribute. yes Spec Public:849
C011 Errata Section JSF.3.6.2.1 Composite Component Metadata Specification. Add BehaviorHolderAttachedObjectTarget after iii. ActionSource2AttachedObjectTarget yes Spec Public: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 Spec Public: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 Spec Public: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.2yes Spec Public:826
C016 Errata Section 2.6.2.1 Relocatable Resources: code snippet: <f:view..../> should be <f:view...> yes Spec Public:565
C017 Errata UISelectItem doesn't mention itemEscaped. yes Spec Public:430
C018 Errata ViewDeclarationLanguage.retargetAttachedObjects() misses talking about Behaviorsyes Spec Public:827
C021 Errata ui:insert missing existing "name" attribute, implemented, tested, but not documented yes Spec Public:667
C022 Errata f:valueChangeListener missing "for" attribute. Implemented, tested, but not documentedyes Spec Public:828
C023 Change in facelets VDLdoc, mark f:verbatim and f:subview as deprecated no Spec Public: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 Spec Public:829
C027 Errata web-facelettaglibrary_2_0.xsd type incorrect for composite-library-name. Should be ***javae:string*** no Spec Public:854
C028 Errata ui:remove VDLDoc has attribute with no nameno Spec Public:842
C029 Errata ui:param has attribute duplicated. One of them should be "value"yes Spec Public:855
C030 Errata RenderKit Docs javax.faces.CompositeFacet change " The implementation of encodeBegin(), must obtain " to be " The implementation of encodeChildren(), must obtain " no Spec Public:843
C031 Errata VDL docs state that composite:attribute has a target attribute with required=true. This attribute is not really required on composite:attribute. yes Spec Public:644
C032 Errata Mention in spec that Objects put in view scope may need to be Serializable yes Spec Public: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 Spec Public: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 Spec Public: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 Spec Public: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 nullyes Spec Public: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 Spec Public:856
C043 Errata Document SEPARATOR_CHAR in section 11.1.3 where all the other context-params are documented yes Spec Public:833
C044 Errata Section 11.4.6 doesn't include ViewDeclarationLanguage, VisitContextFactory, ExceptionHandlerFactory, PartialViewContext, TagHandlerDelegateFactory as decoratable yes Spec Public: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 Spec Public:836
C047 Errata Add "defaults" for "execute", "render" AjaxBehavior in vdldocs. yes Spec Public:568
C048 Errata JSP should not have f:viewParam. Facelets f:viewParam must have name attribute. yes Spec Public:656
C049 Errata Spec section 3.2.5 is empty. Fix that yes Spec Public:835
C050 Errata Spec for UIComponent.setParent() incomplete yes Spec Public:837
C054 Errata f:event name attribute should be type. yes Spec Public: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 Spec Public: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 Spec Public:846
C061 Change Non-normatively document that JavaBeans PropertyEditors will be used for EL Coercion. Mention this in the context of JSF converters yes Spec Public:838
C062 Change In 3.1.5, explicitly mention not to use view scope yes Spec Public: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 Spec Public:747
C064 Change Correct StateHolder.setTransient JavaDoc (specified backwards) yes Spec Public: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 Spec Public: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 Spec Public:800
C068 Change Modify the facelet taglib xsd so that older versions of taglibs are acceptable. yes Spec Public:744
C069 Change Make sure vdldocs for f:event list event all possible event types yes Spec Public:712
C072 Errata Neither applyNextHandler of DelegatingMetaTagHandler or nextHandler of TagHandler
are documented. yes Spec Public:780
C073 Errata Specify f:ajax execute/render id behavior in vdldocs (as outlined in Section 10.4.1.1 of the spec). yes Spec Public:567
C074 Errata <view-param> has no business being a child of <redirect> and should be renamed to <redirect-param>. yes Spec Public:698
C075 Errata includeViewParams implicit navigation flag should be faces-include-view-params. yes Spec Public:699
C077 Errata Event broadcasting should apply to Behaviors (not just ClientBehaviors). yes Spec Public:798
C078 Errata PostAddToViewEvent delivery specification needs clarification. Clarify UIComponent.getParent and getChildren for consistency. yes Spec Public:805
C079 Errata RenderKit Docs - TableRenderer:Clarification - the docs say to render the footer the same as the header which causes the problem. yes Spec Public:255
C080 Errata RenderKit Docs - ButtonRenderer Encode behavior w/r/t onclick attribute - should not be passthrough attribute. yes Spec Public:257
C081 Errata h:message "for" attribute is mis-specified:"for" attribute should be relative id (not clientid). yes Spec Public:266
C082 Errata clarify whether expression of binding-attribute of f:xxxxListener should be evaluated on postback. yes Spec Public:320
C083 Errata Option rendering, specifically when dealing with SelectItemGroups, is too generic. yes Spec Public:420
C084 Errata submittedValue get/set methods underspecified yes Spec Public:434
C085 Errata Current wording in renderkit docs leads to double encoding of query parameters yes Spec Public:436
C086 Errata SelectManyCheckBox Clarification yes Spec Public:466
C087 Errata PDL document for JSTL(Facelets) has the incorrect URI for the NameSpace. yes Spec Public:509
C088 Errata API docs missing for ExceptionEventContext. yes Spec Public:515
C089 Errata composite:attribute component documentation for the attribute
type should be for attribute method-signature. yes Spec Public:524
C090 Errata The UML Diagram for javax.faces.event is out of date. yes Spec Public:525
C091 Errata Minor typo in the Interface BehaviorHolder API. yes Spec Public:534
C092 Errata Two references to the itemLabelEscaped attribute. yes Spec Public:536
C093 Errata Missing class description for javax.faces.event.PostValidateEvent and javax.faces.event.PreValidateEvent. yes Spec Public:537
C094 Errata Section 3.7.5 typo - ClientBehavorHolder should be ClientBehaviorHolder. yes Spec Public:540
C095 Errata Section 4.1.3 typo - NamingContaier should be NamingContainer. yes Spec Public: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 Spec Public:553
C097 Errata Facelets TLD Docs: Missing "for" attribute for "message" and "messages" tags. yes Spec Public:558
C099 Errata ResourceHandler docs: Clarify that relative paths are disallowed in library names. yes Spec Public:577
C100 Errata Renderkit Docs: h:link - Formatting - add paragraphs yes Spec Public: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 Spec Public:590
C102 Errata Spec Section 9.4 doesn't list all the validation tags and it lists the
validateDoubleRange tag twice. no Spec Public: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 Spec Public:592
C104 Errata Spec Section 7.4.1: getNavigationCase should return NavigationCase and not void. yes Spec Public:605
C105 Errata Spec Section 10.4.1.4 says: f:validateBean should extend validateHandler. Should be ValidatorHandler. yes Spec Public:615
C106 Errata Typo: Pages in the TLD docs says "JSF 2.0 Page Decraration Language". Should be "Declaration". yes Spec Public:617
C107 Errata Typos: Table 14-1, 14-2, page 14-3. yes Spec Public:629
C108 Errata UIData.invokeOnComponent docs need to be updated to include handling of column level facets. yes Spec Public: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 Spec Public:635
C110 Errata validateBean and validateRequired tags need to be removed from the JSP PDL
documentation yes Spec Public:645
C111 Errata jsf.ajax.response update element clarification needed in JavaScript docs. yes Spec Public:646
C112 Errata Spec Section 10.4.1.1: Clarify what happens when nesting and wrapping f:ajax tags collide. yes Spec Public:652
C113 Errata Typo: Spec Section 8.3.1: "renderkit-id" should be "render-kit-id" and "renderkit" should be "render-kit". yes Spec Public:660
C114 Errata Add "rendered" attribute to VDL docs for ui:component and ui:fragment. yes Spec Public:661
C115 Errata JavaDocs for UIComponent.processValidators is incomplete. It should mention popComponentFromEL. yes Spec Public:664
C116 Errata Dead link in VDL docs. yes Spec Public:666
C117 Errata Spec Section 2.5.2.4: Standard messages for LengthValidator are confusing. yes Spec Public:668
C118 Errata Spec/pdldocs don't say what the default is for "target" in h:outputScript. yes Spec Public: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 Spec Public:705
C120 Errata Specification edits needed - see: here no Spec Public: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 Spec Public: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 Spec Public:740
C123 Errata Typos in PDLDocs for ui:repeat yes Spec Public:743
C124 Errata Remove "partial-traversal" application element from the spec as it does not exist in the schema. yes Spec Public: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 Spec Public:768
C126 Errata UIInput JavaDocs: Specify the handling of conversion failures. yes Spec Public:775
C127 Errata EditableValueHodler JavaDocs: Missing "@Since 2.0" for "resetValue" method. yes Spec Public:779
C128 Errata VDL documentation for f:selectItem references the "escape" attribute. It should be "itemEscaped". yes Spec Public:788
C129 Errata Specify description for "f:param" "disabled" attribute. yes Spec Public:794
C130 Errata Simplify PostRestoreStateEvent delivery requirements. yes Spec Public:806
Footnotes for above changes
ChangeC006
Rewrite Javadocs for OutcomeTarget renderers
Docs for OutcomeTargetButton
Encode Behavior
Render an HTML "input" element of type "button". The value of the
component is rendered as the button text and the outcome of the
component is used to determine the target URL which is activated by
onclick. If "image" attribute is specified, render it as the value of
the "src" attribute after passing it to the
getResourceURL() method of the ViewHandler for
this application, and passing the result through the
encodeResourceURL() method of the
ExternalContext.
If the component is not disabled, take the following actions.
Algorithm to obtain the url to which the user-agent should issue a GET request when clicked
Obtain the NavigationCase that corresponds to the
component instance for this Renderer.
Obtain an instance of
javax.faces.application.ConfigurableNavigationHandler from
the ViewHandler. If no such instance can be obtained,
write the "disabled" attribute on the button. Otherwise, let
outcome be the result of calling getOutcome() on
the argument component, which must be an instance of
UIOutcomeTarget. If this result is null, let
outcome be the viewId of the current UIViewRoot.
Let navCase be the return from calling
getNavigationCase() on the
ConfigurableNavigationHandler, passing the current
FacesContext as the first argument, null, as
the second argument, and outcome as the third argument. If
this returns null, log an informative error which includes
the component id, and write the "disabled" attribute on the component
markup, with the value of true. Otherwise obtain the
encoded target URL using the following algorithm.
Algorithm to obtain the encoded target URL
Let params be the Map<String,
List<String>> to be passed to
ViewHandler.getBookmarkableURL(). Build this map up first
from any child UIParameter components. These children must
be processed in the order in which they appear as children. If multiple
children with the same name are encountered, their values must appear in
the List<String> in the Map entry with
the same name, and appear in the list in the same order as their child
order.
Next, obtain any parameters included within the
navigation case. Call getParameters() on
navCase. The result will be a Map<String,
List<String>>. If the result is
non-null and non-empty, iterate over the entries
from the result Map and, if no entry with the
same name exists in params, set the value from the
current entry as the value in the params
Map.
Let includeViewParams be the result of a
logical OR of the results from calling
isIncludeViewParams() on the argument
UIOutcomeTarget component and calling
isIncludeViewParams on navCase.
Call getBookmarkableURL() on the
ViewHandler, passing the current
FacesContext as the first argument, the return
from calling getToViewId() as the second
argument, params as the third argument, and
includeViewParams as the last argument.
The entire target URL string must be passed through a call to
the encodeResourceURL() method of the
ExternalContext. The name of the
UIParameter goes on the left hand side, and the value of
the UIParameter on the right hand side. The name and the
value must be URLEncoded. Each UIParameter instance is
separeted by an ampersand, as dictated in the URL spec. The final
encoded result will be written out to the onclick attribute of the
button as "window.location.href = ''". If the
developer has specified a custom onlclick the window.location.href
name/value pair will be appended at the end of the developer specified
script. If the "fragment" attribute is specified, the value will be
included at the end of the resulting URL preceded by a hash mark. If
the "styleClass" attribute is specified, render its value as the value
of the "class" attribute. If the "id" attribute is specified, follow
the same steps as mentioned in the "General Notes on Encoding" section of the
RenderKit docs regarding the "id" attribute for UIInput
components. If the "disabled" attribute is specified, do not render
the "onclick" element and assign the "disabled" attribute a value of
true.
Docs for OutcomeTargetLink
Render an HTML "a" anchor element. The value of the component is
rendered as the anchor text and the outcome of the component is used to
determine the target URL rendered in the "href" attribute. Execute the
Algorithm to obtain the URL to which the user-agent should issue a GET request
when clicked. If the "id" attribute is specified, follow the same
steps as mentioned in the "General Notes on Encoding" section of the RenderKit docs
regarding the "id" attribute for UIInput
components. If the "disabled" attribute is specified, do not render the
HTML "a" anchor element or the "href" element. Instead, render a "span"
element. If the "styleClass" attribute is specified, render its value
as the value of the "class" attribute on the "span". Render any
pass-through attributes on the "span".
|
Target Milestone 2.0 Rev AThe source code repositories for the spec to which this change-log applies are:
* svn url for generated portion of spec, and implementation
|
Footnotes for above changes
ChangeC006Rewrite Javadocs for OutcomeTarget renderers
Docs for OutcomeTargetButton
Encode Behavior
Render an HTML "input" element of type "button". The value of the
component is rendered as the button text and the outcome of the
component is used to determine the target URL which is activated by
onclick. If "image" attribute is specified, render it as the value of
the "src" attribute after passing it to the
getResourceURL() method of the ViewHandler for
this application, and passing the result through the
encodeResourceURL() method of the
ExternalContext.
If the component is not disabled, take the following actions.
Algorithm to obtain the url to which the user-agent should issue a GET request when clicked
Obtain the NavigationCase that corresponds to the
component instance for this Renderer.
Obtain an instance of
javax.faces.application.ConfigurableNavigationHandler from
the ViewHandler. If no such instance can be obtained,
write the "disabled" attribute on the button. Otherwise, let
outcome be the result of calling getOutcome() on
the argument component, which must be an instance of
UIOutcomeTarget. If this result is null, let
outcome be the viewId of the current UIViewRoot.
Let navCase be the return from calling
getNavigationCase() on the
ConfigurableNavigationHandler, passing the current
FacesContext as the first argument, null, as
the second argument, and outcome as the third argument. If
this returns null, log an informative error which includes
the component id, and write the "disabled" attribute on the component
markup, with the value of true. Otherwise obtain the
encoded target URL using the following algorithm.
Algorithm to obtain the encoded target URL
Let params be the
Map<String, List<String>>to be passed toViewHandler.getBookmarkableURL(). Build this map up first from any childUIParametercomponents. These children must be processed in the order in which they appear as children. If multiple children with the same name are encountered, their values must appear in theList<String>in theMapentry with the same name, and appear in the list in the same order as their child order.Next, obtain any parameters included within the navigation case. Call
getParameters()on navCase. The result will be aMap<String, List<String>>. If the result is non-nulland non-empty, iterate over the entries from the resultMapand, if no entry with the same name exists in params, set the value from the current entry as the value in the paramsMap.Let includeViewParams be the result of a logical OR of the results from calling
isIncludeViewParams()on the argumentUIOutcomeTargetcomponent and callingisIncludeViewParamson navCase.Call
getBookmarkableURL()on theViewHandler, passing the currentFacesContextas the first argument, the return from callinggetToViewId()as the second argument, params as the third argument, and includeViewParams as the last argument.
The entire target URL string must be passed through a call to
the encodeResourceURL() method of the
ExternalContext. The name of the
UIParameter goes on the left hand side, and the value of
the UIParameter on the right hand side. The name and the
value must be URLEncoded. Each UIParameter instance is
separeted by an ampersand, as dictated in the URL spec. The final
encoded result will be written out to the onclick attribute of the
button as "window.location.href = '
Render an HTML "a" anchor element. The value of the component is rendered as the anchor text and the outcome of the component is used to determine the target URL rendered in the "href" attribute. Execute the Algorithm to obtain the URL to which the user-agent should issue a GET request when clicked. If the "id" attribute is specified, follow the same steps as mentioned in the "General Notes on Encoding" section of the RenderKit docs regarding the "id" attribute for UIInput components. If the "disabled" attribute is specified, do not render the HTML "a" anchor element or the "href" element. Instead, render a "span" element. If the "styleClass" attribute is specified, render its value as the value of the "class" attribute on the "span". Render any pass-through attributes on the "span".