Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.0
    • Fix Version/s: 2.0
    • Component/s: Uncategorized
    • Labels:
      None
    • Environment:

      Operating System: All
      Platform: Macintosh

    • Issuezilla Id:
      274
    • Status Whiteboard:
      Hide

      EGTop5 effort_hard

      Show
      EGTop5 effort_hard

      Description

      JSF 2.0 will define a JSF specific page description language. It will be based on Facelets, but will
      incorporate the best of Facelets, JSFTemplating and Shale Clay.

      1. 274-schema.txt
        5 kB
        Ed Burns
      2. changebundle.txt
        30 kB
        Ed Burns
      3. changebundle.txt
        27 kB
        Ed Burns
      4. changebundle.txt
        16 kB
        Ed Burns
      5. changebundle.txt
        48 kB
        Ed Burns
      6. changebundle.txt
        96 kB
        Ed Burns
      7. diffs.txt
        12 kB
        Ed Burns
      8. jsf-andy.patch
        24 kB
        aschwart
      9. jsf-andy-reviewed.patch
        30 kB
        aschwart

        Issue Links

          Activity

          Hide
          Ed Burns added a comment -

          dependency

          Show
          Ed Burns added a comment - dependency
          Hide
          Ed Burns added a comment -

          dependency

          Show
          Ed Burns added a comment - dependency
          Hide
          Ed Burns added a comment -

          dependency

          Show
          Ed Burns added a comment - dependency
          Hide
          Ed Burns added a comment -

          Depends on 318

          Show
          Ed Burns added a comment - Depends on 318
          Hide
          Ed Burns added a comment -

          Spec section 2.2.6 Render Response

          pending comment in spec:

          [P1-start-renderResponse]However, all JSF implementations of this phase must conform to the
          following requirements:
          JSF implementations must provide a default ViewHandler implementation that is capable of handling
          views written in JSP as well as views written in the Faces Page Description Language (PDL). In the case
          of JSP, the ViewHandler must perform a RequestDispatcher.forward() call to a web application resource
          whose context-relative path is equal to the view identifier of the component tree. In the case of Faces
          PDL the action that must be taken is PENDING discussion

          Show
          Ed Burns added a comment - Spec section 2.2.6 Render Response pending comment in spec: [P1-start-renderResponse] However, all JSF implementations of this phase must conform to the following requirements: JSF implementations must provide a default ViewHandler implementation that is capable of handling views written in JSP as well as views written in the Faces Page Description Language (PDL). In the case of JSP, the ViewHandler must perform a RequestDispatcher.forward() call to a web application resource whose context-relative path is equal to the view identifier of the component tree. In the case of Faces PDL the action that must be taken is PENDING discussion
          Hide
          Ed Burns added a comment -
              • Issue 409 has been marked as a duplicate of this issue. ***
          Show
          Ed Burns added a comment - Issue 409 has been marked as a duplicate of this issue. ***
          Hide
          rogerk added a comment -

          Added 83 as a child

          Show
          rogerk added a comment - Added 83 as a child
          Hide
          Ryan Lubke added a comment -

          web-facelettaglbrary_2_0.xsd comments
          -------------------------------------------

          • Add optional metadata description for tags and attributes supported by the
            tags. This metadata will be consumed by a tool to produce documentation similar
            to TLDDoc
          • Create new module for mojarra to contain modified tlddoc code that generates
            TLDDoc style documentation for web-facelettaglibrary documents

          Spec question - Given the new backwards compat flag that disables the Faces PDL
          to allow 1.2 facelet apps to work without modification in a 2.0 environment,
          will 2.0 implementations be required to understand facelet-taglib_1_0.dtd-based
          documents?

          Show
          Ryan Lubke added a comment - web-facelettaglbrary_2_0.xsd comments ------------------------------------------- Add optional metadata description for tags and attributes supported by the tags. This metadata will be consumed by a tool to produce documentation similar to TLDDoc Create new module for mojarra to contain modified tlddoc code that generates TLDDoc style documentation for web-facelettaglibrary documents Spec question - Given the new backwards compat flag that disables the Faces PDL to allow 1.2 facelet apps to work without modification in a 2.0 environment, will 2.0 implementations be required to understand facelet-taglib_1_0.dtd-based documents?
          Hide
          Ed Burns added a comment -

          add umbrella to title.

          Show
          Ed Burns added a comment - add umbrella to title.
          Hide
          Ed Burns added a comment -

          wb

          Show
          Ed Burns added a comment - wb
          Hide
          Ed Burns added a comment -

          The whole "Umbrella issue" thing didn't work out as planned. Changing summary back to be specific.

          Show
          Ed Burns added a comment - The whole "Umbrella issue" thing didn't work out as planned. Changing summary back to be specific.
          Hide
          Ed Burns added a comment -

          Created an attachment (id=165)
          Create and start to populate javax.faces.webapp.pdl.facelets package.

          Show
          Ed Burns added a comment - Created an attachment (id=165) Create and start to populate javax.faces.webapp.pdl.facelets package.
          Hide
          Ed Burns added a comment -

          Created an attachment (id=166)
          Schema for component/tag metadata

          Show
          Ed Burns added a comment - Created an attachment (id=166) Schema for component/tag metadata
          Hide
          Ed Burns added a comment -

          Created an attachment (id=168)
          Changelog to add more methods to PageDeclarationLanguage.

          Show
          Ed Burns added a comment - Created an attachment (id=168) Changelog to add more methods to PageDeclarationLanguage.
          Hide
          Ed Burns added a comment -

          The complete list of Facelet classes now in the public API is:

          jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletContext.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletException.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletHandler.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletsArtifactFactory.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/package.html
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/.svn
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/Location.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetaRule.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetaRuleset.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetaTagHandler.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/Metadata.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetadataTarget.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/Tag.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagAttribute.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagAttributeException.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagAttributes.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagConfig.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagException.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagHandler.java
          jsf-api/src/javax/faces/webapp/pdl/facelets/tag/package.html

          Show
          Ed Burns added a comment - The complete list of Facelet classes now in the public API is: jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletContext.java jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletException.java jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletHandler.java jsf-api/src/javax/faces/webapp/pdl/facelets/FaceletsArtifactFactory.java jsf-api/src/javax/faces/webapp/pdl/facelets/package.html jsf-api/src/javax/faces/webapp/pdl/facelets/tag/.svn jsf-api/src/javax/faces/webapp/pdl/facelets/tag/Location.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetaRule.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetaRuleset.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetaTagHandler.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/Metadata.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/MetadataTarget.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/Tag.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagAttribute.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagAttributeException.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagAttributes.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagConfig.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagException.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/TagHandler.java jsf-api/src/javax/faces/webapp/pdl/facelets/tag/package.html
          Hide
          Ed Burns added a comment -

          Created an attachment (id=208)
          Change bundle for exposing Component Handler

          Show
          Ed Burns added a comment - Created an attachment (id=208) Change bundle for exposing Component Handler
          Hide
          Ed Burns added a comment -

          Created an attachment (id=209)
          Diffs for Ryan to take.

          Show
          Ed Burns added a comment - Created an attachment (id=209) Diffs for Ryan to take.
          Hide
          Ed Burns added a comment -

          Created an attachment (id=210)
          Fix for Roger to Review.

          Show
          Ed Burns added a comment - Created an attachment (id=210) Fix for Roger to Review.
          Hide
          rogerk added a comment -

          primarily r=rogerk
          However check comments in ComponentTagHandlerHelperImpl - some of the private
          method comments look like they have been carried over from public methods.

          Show
          rogerk added a comment - primarily r=rogerk However check comments in ComponentTagHandlerHelperImpl - some of the private method comments look like they have been carried over from public methods.
          Hide
          Ed Burns added a comment -

          Created an attachment (id=211)
          Fix for part 2

          Show
          Ed Burns added a comment - Created an attachment (id=211) Fix for part 2
          Hide
          rogerk added a comment -

          r=rogerk

          Show
          rogerk added a comment - r=rogerk
          Hide
          aschwart added a comment -

          Created an attachment (id=212)
          API additions requested by Oracle

          Show
          aschwart added a comment - Created an attachment (id=212) API additions requested by Oracle
          Hide
          aschwart added a comment -

          The jsf-andy.patch addresses additional requirements raised by Oracle/ADF Faces.
          ADF Faces needs a way to find child handlers by type. In particular, ADF Faces
          needs to be able to locate the following types of handlers by type:

          • TextHandlers
          • AttributeHandlers
          • FacetHandlers

          Previously this was possible using the Facelets 1.1.x
          TagHandler.findNextByType() API and referencing the above handler types.
          However, both findNextByType() and the above handlers have been moved out of the
          public API in JSF 2.0.

          One option would be to move findNextByType() and the above handler
          implementations into the public API, but in order to keep the amount of
          implementation in jsf-api small, we instead decided to add the following four
          interfaces:

          1. javax.faces.webapp.pdl.facelets.tag.TextHandler

          This interface is identical to Facelets 1.1.x version. It defines two methods:

          • public String getText();
          • public String getText(FaceletContext ctx);

          2. javax.faces.webapp.pdl.facelets.tag.AttributeHandler:

          This is a new interface that defines a single method:

          • public String getAttributeName(FaceletContext ctx);

          3. javax.faces.webapp.pdl.facelets.tag.FacetHandler

          This is a new interface that defines a single method:

          • public String getFacetName(FaceletContext ctx);

          4. javax.faces.webapp.pdl.facelets.tag.CompositeFacletHandler

          This is a new interface that defines a single method:

          • public FaceletHandler[] getHandlers();

          Note that we decided to introduce #4 as an alternative to introducing a public
          findNextByType(), as CompositeFaceletHandler is sufficient to allow users to
          scan child FaceletHandlers.

          The attached patch introduces these new contracts, and also updates the jsf-ri
          accordingly.

          Running "ant test.with.container.refresh" passes successfully.

          Show
          aschwart added a comment - The jsf-andy.patch addresses additional requirements raised by Oracle/ADF Faces. ADF Faces needs a way to find child handlers by type. In particular, ADF Faces needs to be able to locate the following types of handlers by type: TextHandlers AttributeHandlers FacetHandlers Previously this was possible using the Facelets 1.1.x TagHandler.findNextByType() API and referencing the above handler types. However, both findNextByType() and the above handlers have been moved out of the public API in JSF 2.0. One option would be to move findNextByType() and the above handler implementations into the public API, but in order to keep the amount of implementation in jsf-api small, we instead decided to add the following four interfaces: 1. javax.faces.webapp.pdl.facelets.tag.TextHandler This interface is identical to Facelets 1.1.x version. It defines two methods: public String getText(); public String getText(FaceletContext ctx); 2. javax.faces.webapp.pdl.facelets.tag.AttributeHandler: This is a new interface that defines a single method: public String getAttributeName(FaceletContext ctx); 3. javax.faces.webapp.pdl.facelets.tag.FacetHandler This is a new interface that defines a single method: public String getFacetName(FaceletContext ctx); 4. javax.faces.webapp.pdl.facelets.tag.CompositeFacletHandler This is a new interface that defines a single method: public FaceletHandler[] getHandlers(); Note that we decided to introduce #4 as an alternative to introducing a public findNextByType(), as CompositeFaceletHandler is sufficient to allow users to scan child FaceletHandlers. The attached patch introduces these new contracts, and also updates the jsf-ri accordingly. Running "ant test.with.container.refresh" passes successfully.
          Hide
          Ed Burns added a comment -

          Andy, please remove CompositeFaceletHandler from the impl, change the api CompositeFaceletHandler to
          be a class, not an interface, and have it take on the implementation formerly in the impl.

          Remove any @Override annotations on methods that implement methods from an interface, rather than a
          class.

          Otherwise, r=edburns for going through the checkin process and committing.

          Ed

          Show
          Ed Burns added a comment - Andy, please remove CompositeFaceletHandler from the impl, change the api CompositeFaceletHandler to be a class, not an interface, and have it take on the implementation formerly in the impl. Remove any @Override annotations on methods that implement methods from an interface, rather than a class. Otherwise, r=edburns for going through the checkin process and committing. Ed
          Hide
          aschwart added a comment -

          Created an attachment (id=213)
          Updated version of jsf-andy.patch with review changes

          Show
          aschwart added a comment - Created an attachment (id=213) Updated version of jsf-andy.patch with review changes
          Hide
          Ed Burns added a comment -

          Fixed

          Show
          Ed Burns added a comment - Fixed
          Hide
          Ed Burns added a comment -

          Prepare to delete "spec" subcomponent.

          Show
          Ed Burns added a comment - Prepare to delete "spec" subcomponent.
          Hide
          Manfred Riem added a comment -

          Closing resolved issue out

          Show
          Manfred Riem added a comment - Closing resolved issue out

            People

            • Assignee:
              Ed Burns
              Reporter:
              Ed Burns
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: