Uploaded image for project: 'CDI Specification Issues'
  1. CDI Specification Issues
  2. CDI-500

Clarify @Intercepted Bean metadata injection for EE components

XMLWordPrintable

    • Icon: Clarification Clarification
    • Resolution: Done
    • Icon: Major Major
    • 2.0 .Final
    • 1.2.Final
    • Interceptors
    • None

      It's not clear what should happen when an interceptor with @Intercepted Bean metadata is associated with an EE component.

      See the CDI spec, "5.5.8. Bean metadata":

      Additionally, the container must provide beans allowing interceptors and decorators to obtain information about the beans they intercept and decorate:

      • a bean with scope @Dependent, qualifier @Intercepted and type Bean which can be injected into any interceptor instance, and
      • ...

      However, most EE components must also support the use of CDI interceptors. See also the Java EE 7 spec, "EE.5.2.5 Annotations and Injection":

      The component classes listed in Table EE.5-1 with support level "Standard"
      all support Java EE resource injection, as well as PostConstruct and PreDestroy callbacks. In addition, if CDI is enabled—which it is by default—these classes also support CDI injection, as described in Section EE.5.24, "Support for Dependency Injection", and the use of interceptors.

              mkouba@redhat.com Martin Kouba
              mkouba@redhat.com Martin Kouba
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: