是否有可能在运行时检测CDI托管bean的范围?

问题描述 投票:1回答:1

是否有可能在运行时检测CDI托管bean的范围?

java-ee cdi
1个回答
1
投票

您可以注入BeanManager并查询您的bean定义:

@Inject
BeanManager beanManager;
...
Class<? extends Annotation> scope = beanManager.getBeans(MyClass.class,MyOptionalQualifier1.class).iterator().next().getScope();
if(scope.isAssignableFrom(RequestScoped.class))
...
© www.soinside.com 2019 - 2024. All rights reserved.