@Target(value={PARAMETER,FIELD,CONSTRUCTOR}) @Retention(value=RUNTIME) @Documented @UseWith(value={COMPONENT,MIXIN,PAGE,SERVICE}) public @interface Inject
ObjectProvider
, even when the parameter's type matches a type that is normally a
resource.
For service implementations, module classes, and other objects constructed via
ObjectLocator.autobuild(Class)
, this annotation indicates that an injection is
desired on the field, as with fields of a Tapestry component.
In terms of the IoC container, the Inject annotation is only used on parameters to service builder methods (and
contributor and decorator methods) and on module class constructors. constructors. However, inside Tapestry
components (and only inside components), it may be applied to fields. On fields that require injection, the
Inject annotation is required.
Finally, on a constructor, this is used to indicate which constructor should be used when more than one is
available.ObjectProvider
5.6.3 - Copyright © 2003-2021 The Apache Software Foundation.