Marko, this has been clarified for CDI 1.1 see http://docs.jboss.org/cdi/spec/1.1.EDR1/html/interceptors.html#interceptorbindingmembers
The last paragraph does not make it possible for two instances of an interceptor binding to be considered within interceptor resolution. On 03/05/2012 11:50 AM, Marko Lukša wrote: > > According to the spec, BeanManager.resolveInterceptors() should throw > IAE if two instances of the same interceptor binding type are given. > > o.j.weld.tests.interceptors.tb.GenericDAO is annotated @Tx(0) and its > method find() is annotated @Tx(1). The annotation's only member is > *Nonbinding*. > > - So @Tx(0) and @Tx(1) are considered to be the _same_ binding? > - The spec allows (doesn't disallow) methods to be annotated with the > same binding type as the class, right? > - However, calling resolveInterceptors with these two should throw > IAE? Currently it does not. > > I've made fixes for WELD-999 and now resolveInterceptors does in fact > throw IAE in this case. But I guess I now have to remove duplicate > bindings before calling resolveInterceptors in cases where the method > of a bean is annotated with the same binding type as the bean itself. > > Am I wrong in assuming that @Tx(0) and @Tx(1) are the same binding? > > Regards > Marko > > > > > _______________________________________________ > weld-dev mailing list > [email protected] > https://lists.jboss.org/mailman/listinfo/weld-dev _______________________________________________ weld-dev mailing list [email protected] https://lists.jboss.org/mailman/listinfo/weld-dev
