Closed
Description
Sam Brannen opened SPR-12941 and commented
Status Quo
In contrast to the search algorithm used by the findAnnotation(Class, Class)
method in AnnotationUtils
, the findAnnotation(Method, Class)
method currently only finds direct annotations or direct meta-annotations (i.e., one level of meta-annotations).
This lacking support for multiple levels of meta-annotations has been the cause of failing (though currently @Ignored
) tests in TransactionalEventListenerTests
since @EventListener
is not discovered as a meta-meta-annotation by the EventListenerMethodProcessor
.
Deliverables
- Rework
findAnnotation(Method, Class)
so that it supports arbitrary levels of meta-annotations on methods.
Issue Links:
- Document meta-annotation support in AnnotationUtils [SPR-12940] #17533 Document meta-annotation support in AnnotationUtils
- AnnotatedElementUtils does not find annotations on methods in dynamic proxies [SPR-12703] #17300 AnnotatedElementUtils does not find annotations on methods in dynamic proxies
Referenced from: commits b9b0b78