jsr339-experts@jax-rs-spec.java.net

[jsr339-experts] Re: [jax-rs-spec users] _at_NameBinding

From: Santiago Pericas-Geertsen <Santiago.PericasGeertsen_at_oracle.com>
Date: Fri, 11 Nov 2011 13:49:53 -0500

Hi Adam,

> The @NameBinding annotation seems to be similar to JSR-330 @Qualifier:
>
> @Target(ElementType.ANNOTATION_TYPE)
> @Retention(value = RetentionPolicy.RUNTIME)
> public @interface NameBinding {
> }
>
>
> Couldn't we just reuse the either the @Named or use a custom Qualifier for that? Especially the sample "@Logged" looks exactly like a qualifier.

 This is an interesting question. I don't see any technical reason against it. However, we are looking at providing JSR 330 injection support as well. If name binding annotations are qualifiers, it would be natural for developers to attempt to do:

   @Inject @Logged RequestFilter loggingFilter;

 and I don't know if we want to support this. Filters are really intended to be executed at extension points, not called directly by application code.

 Having said that, as we iron out the last details around 330 integration, we should consider this proposal.

-- Santiago