As part of
CDI-2, changes were made to the Interceptors chapter of the CDI specification. These changes need further clarification:
Interceptor bindings defined on methods may override the interceptor bindings defined on classes.
One way to interpret this is that the set of interceptor bindings defined on a method overrides the set of interceptor bindings defined on a class, which is clearly not the intended behavior.
If the set of interceptor bindings of a bean
or interceptor, including bindings inherited from stereotypes and other
interceptor bindings, has two instances of a certain interceptor binding type
and the instances have different values of some annotation member, the bean
or interceptor must override the inherited set by definining an annotation
instance of its own, otherwise, the container automatically detects the problem
and treats it as a definition error.
Here again I would avoid referencing "the inherited set", since it's not clear what that means, and rather use wording similar to the section 2.4.4 - default scope of a stereotype.