Details

    • Issuezilla Id:
      721
    • Status Whiteboard:
      Hide

      size_large importance_medium

      Show
      size_large importance_medium

      Description

      Any user-defined handler class (e.g., phase listeners, system event listeners,
      validators, converters) that JSF instantiates should be classified as a
      component in Java EE. But, to accommodate that without tying JSF directly to the
      platform (a separation JSF has always maintained), there should be a pluggable
      class instance resolver. This resolver may be satisfied with a CDI
      implementation, a Spring bean implementation, etc.

      That way, it becomes possible to support CDI injection (or Spring injection)
      into these objects. Basically, any time JSF looks up a class instance w/o the
      use of the EL, it should go through this instance resolver. Really, it
      complements the EL resolver, which is already a nice mechanism for hooking into
      different component models.

      The specification should define an SPI to support instantiation/lifecycle
      management of these objects, as it would fit well with the pluggability goal
      that JSF has.

      Mojarra has an implementation/prototype of this SPI:
      <MOJARRA>/jsf-ri/src/com/sun/faces/spi/InjectionProvider.java.

        Activity

        Hide
        mojavelinux added a comment -

        Change target milestone

        Show
        mojavelinux added a comment - Change target milestone
        Hide
        Ed Burns added a comment -

        This should be used for injection of all JSF artifact types: managed beans, phase
        listeners, converters, components, etc.

        Show
        Ed Burns added a comment - This should be used for injection of all JSF artifact types: managed beans, phase listeners, converters, components, etc.
        Hide
        mojavelinux added a comment -

        I challenge the inclusion of managed beans in this list. I feel strongly that we
        want to get rid of managed beans. Adding support for CDI injections (or alt
        provider) is going to make them even more of a mess. We should not touch managed
        beans in any way.

        Show
        mojavelinux added a comment - I challenge the inclusion of managed beans in this list. I feel strongly that we want to get rid of managed beans. Adding support for CDI injections (or alt provider) is going to make them even more of a mess. We should not touch managed beans in any way.
        Hide
        mojavelinux added a comment -

        The reason we need to support injection into the other artifact types
        (listeners, validators, converters) is because JSF has to "own" these types in
        order to operate. So we simply want to find a common ground there between JSF
        and the platform component model.

        Show
        mojavelinux added a comment - The reason we need to support injection into the other artifact types (listeners, validators, converters) is because JSF has to "own" these types in order to operate. So we simply want to find a common ground there between JSF and the platform component model.
        Hide
        Ed Burns added a comment -

        triage

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

        Change target milestone.

        Show
        Ed Burns added a comment - Change target milestone.
        Hide
        rogerk added a comment -

        triage

        Show
        rogerk added a comment - triage
        Hide
        Ed Burns added a comment -

        I have discussed this with Pete Muir and we agreed that if such an API needs to be exposed, it should be on CDI or JavaEE, and certainly not in JSF.

        Show
        Ed Burns added a comment - I have discussed this with Pete Muir and we agreed that if such an API needs to be exposed, it should be on CDI or JavaEE, and certainly not in JSF.
        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:
            mojavelinux
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: