-
1. Re: ProcessAnnotatedType<? extends BeanManager> never fired?
mkouba Nov 20, 2019 3:56 AM (in response to ljnelson)So in this particular case the container is required to fire a PAT for:
BeanManager
interface found in an explicit bean archiveBeanManager
implementation found in an explicit bean archiveBeanManager
implementation found in an implicit bean archive.
See JSR 365: Contexts and Dependency Injection for Java 2.0 .
-
2. Re: ProcessAnnotatedType<? extends BeanManager> never fired?
ljnelson Nov 20, 2019 4:40 PM (in response to mkouba)mkouba wrote:
So in this particular case the container is required to fire a PAT for:
BeanManager
interface found in an explicit bean archiveBeanManager
implementation found in an explicit bean archiveBeanManager
implementation found in an implicit bean archive.
See JSR 365: Contexts and Dependency Injection for Java 2.0 .
OK; the CDI API jar is not an explicit bean archive, and it is the only jar file on my classpath that contains the
BeanManager
interface.The only
BeanManager
implementation is inweld-core
and that is not an explicit bean archive, so case 2 does not apply.weld-core
is probably not an implicit bean archive, since it itself is an implementation of CDI, but I'm not going to spend time looking at each and every class in it to see if there is at least one with a bean-defining annotation on it. If indeedweld-core
is not an implicit bean archive, then the fact that I do not observe anyProcessAnnotatedType<? extends BeanManager>
event would seem to be correct. Ifweld-core
is an implicit bean archive, then the fact that I do not observe anyProcessAnnotatedType<? extends BeanManager>
would seem to be a bug.Do I have that correct?
Thanks for your time,
Best,
Laird
-
3. Re: ProcessAnnotatedType<? extends BeanManager> never fired?
mkouba Nov 21, 2019 2:41 AM (in response to ljnelson)Yes, weld-core is not supposed to be a bean archive. An even if it's included in a shaded jar (Weld SE) the classes are vetoed - see for example core/package-info.java at master · weld/core · GitHub .