Annotation Interface CdiComponent
@Stereotype to let the container scan and manage the
instances of the annotated types.
Annotating the beans with this annotation is necessary when the
bean-discovery-mode="annotated" is set in the beans.xml file
(implicit bean archive), and in this case CDI can only manage and inject
beans annotated with bean defining annotations.
Although, this can be applied to any type of beans such as service objects,
it is originally designed to be used on Vaadin components or views that may
or may not already bean annotated by any other pseudo-scope annotations e.g.
@RouteScoped or @UIScoped. See
https://docs.jboss.org/cdi/spec/1.2/cdi-spec.html#normal_scope for more
information about scopes and pseudo-scopes.
If the explicit bean archive strategy is in use (via an empty beans.xml or the one containing bean-discovery-mode="all"), CDI can manage and inject any bean, except those annotated with @Vetoed.