2013-04-10 58 views
0

我想从容器中检索所有CDI bean作为映射,其中bean的名称为键和bean作为值。我怎么能做到这一点?获取所有CDI bean

我需要这个将CDI bean添加到thymeleaf表达式解析器。

回答

1

写一个便携式分机,并将其写入ProcessAnnotatedType事件。然后让它寻找具有@Named注释的类型,并将其添加到类或其他类的静态地图中。

+0

这应该很好。 – 2013-04-11 17:45:46

+0

好吧,它的工作原理:)但我还有一个问题:我会在每个请求中要求这个bean映射,在扩展中我应该创建bean名称和bean实例的映射(从扩展类中的BeanManager获得)并返回此映射每个请求,还是应该创建一个bean名称和bean类的映射,并向每个请求的bean实例请求bean管理器? – gandalfml 2013-04-11 18:43:20

+2

好吧,我发现我需要在每个请求中向BeanManager询问bean。 非常感谢您的帮助:) – gandalfml 2013-04-11 19:36:34

相关问题