Annotation Type ResourcePath


  • @Target({METHOD,FIELD,PARAMETER})
    @Retention(RUNTIME)
    @InjectAnnotation
    public @interface ResourcePath
    Annotation to be used on either methods, fields or constructor parameters to let Sling Models inject a resource by path(s). The path may be either in the path/paths attribute or in a value map property with the given name.
    • Element Detail

      • path

        String path
        Specifies the path of the resource. If not provided, the path is derived from the property name.
        Default:
        ""
      • paths

        String[] paths
        Specifies more than one path for the resource. If not provided, a single path is derived from the property name.
        Default:
        {}
      • name

        String name
        Specifies the name of the property containing the resource path. If empty or not set, then the name is derived from the method or field.
        Default:
        ""
      • optional

        @Deprecated
        boolean optional
        Deprecated.
        Use injectionStrategy() instead.
        If set to true, the model can be instantiated even if there is no request attribute with the given name found. Default = false.
        Default:
        false
      • injectionStrategy

        InjectionStrategy injectionStrategy
        if set to REQUIRED injection is mandatory, if set to OPTIONAL injection is optional, in case of DEFAULT the standard annotations (Optional, Required) are used. If even those are not available the default injection strategy defined on the Model applies. Default value = DEFAULT.
        Default:
        org.apache.sling.models.annotations.injectorspecific.InjectionStrategy.DEFAULT