Interface InjectionProvider

All Known Implementing Classes:
DiscoverableInjectionProvider, WebContainerInjectionProvider

public interface InjectionProvider

This interface defines an integration point for Jakarta EE vendors. Each vendor will need to provide an implementation of this interface which will provide the Faces implementation the necessary hooks to perform resource injection.

The implementation of this interface *must* be thread-safe and must provider either a no-arg constructor, or a constructor accepting a ServletContext instance.

  • Method Summary

    Modifier and Type
    Method
    Description
    void
    inject(Object managedBean)
    The implementation of this method must perform the following steps: Inject the supported resources per the Servlet 2.5 specification into the provided object
    void
    The implemenation of this method must invoke any method marked with the @PostConstruct annotation (per the Common Annotations Specification).
    void
    invokePreDestroy(Object managedBean)
    The implemenation of this method must invoke any method marked with the @PreDestroy annotation (per the Common Annotations Specification).
  • Method Details

    • inject

      void inject(Object managedBean) throws InjectionProviderException

      The implementation of this method must perform the following steps:

      • Inject the supported resources per the Servlet 2.5 specification into the provided object

      This method must not invoke any methods annotated with @PostConstruct

      Parameters:
      managedBean - the target managed bean
      Throws:
      InjectionProviderException - if an error occurs during resource injection
    • invokePreDestroy

      void invokePreDestroy(Object managedBean) throws InjectionProviderException

      The implemenation of this method must invoke any method marked with the @PreDestroy annotation (per the Common Annotations Specification).

      Parameters:
      managedBean - the target managed bean
      Throws:
      InjectionProviderException - if an error occurs when invoking the method annotated by the @PreDestroy annotation
    • invokePostConstruct

      void invokePostConstruct(Object managedBean) throws InjectionProviderException

      The implemenation of this method must invoke any method marked with the @PostConstruct annotation (per the Common Annotations Specification).

      Parameters:
      managedBean - the target managed bean
      Throws:
      InjectionProviderException - if an error occurs when invoking the method annotated by the @PostConstruct annotation