• Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: 2.0
    • Fix Version/s: 2.2
    • Component/s: Facelets/VDL
    • Labels:
    • Environment:

      Operating System: All
      Platform: All

    • Issuezilla Id:
    • Status Whiteboard:

      size_large importance_medium

      size_large importance_medium


      This message is on behalf of Lewis Gass.

      I am writing in relation to a particular use case which reveals that the
      current JSF 2.0 public API is defficient. This is in relation the open
      source project Gracelets ( and the new
      effort to integrate JSF 2.0 with Groovy. In order for people to use Groovy
      as an alternative View Langauge they need
      to have access to the all the Facelets tag libraries and participate in the
      Templating framework that Facelets provides. Much of this is tied to the
      TagLibrary and
      TemplateClient API's. Before, with JSF 1.2, there was a single Facelets
      "API" and/or implementation. So integrating with it was much simpler, as is
      shown by previous Gracelets
      versions. With JSF 2.0, part of the Facelets library was divided into public
      API and another as JSF 2.0 specific implementation.

      However, basic concepts such as Templating (TemplateClient and
      TemplateManager) are not considered public API, which means that a
      technology such as Gracelets
      must rely on a per JSF implementation integration library which is volatile
      in nature. The FaceletContext class is public API, but implementations are
      not required to support
      third party implementations of such, and there is no standard way to access
      the TagLibrary used by facelets so that third part View Languages can
      harness them.

      Thus this message has the purpose of requesting such parts of the old
      Facelets library, namely, the TagLibrary, TemplateClient and the related
      FaceletContext methods (popClient(),
      pushClient(), extendClient() and applyDefinition()) to be part of the public
      JSF 2.0 API, while at the same time requiring JSF 2.0 implementors to
      support third party implementations
      of the same classes/API's.

      Lewis Gass
      Gracelets Coder


        No work has yet been logged on this issue.


          • Assignee:
          • Votes:
            1 Vote for this issue
            1 Start watching this issue


            • Created: