0

生产者方法对于以编程方式创建实例并在上下文中发布它们非常有用。new问题是由生产者方法创建和返回的实例的所有属性都不是由 CDI 注入的。在 Weld 文档中,我读到这是一种有意的行为,但在许多情况下,注入这些 bean 会非常有用。

是否有解决方法可以注入此类 bean?

4

1 回答 1

1

首先,我要问一下为什么你要为需要注入的 bean 使用生产者。

除此之外,您需要从 BeanManager 创建一个新实例。看看https://github.com/apache/incubator-deltaspike/blob/master/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/provider/BeanProvider.java# L115的一些想法(您可以简单地将 BeanManager 作为参数注入 Producer 方法并执行相同的代码)。

于 2013-01-24T17:16:26.823 回答