【发布时间】:2016-04-10 08:48:45
【问题描述】:
我有一个名为 Class1 的班级。我也不知道这类课程的领域是什么,但我知道 在此类中存在使用注释@Inject 的字段,这意味着 此类字段需要注入 Object 实例。我所知道的是该类有一个默认控制器。我用 这样的控制器通过 newInstance 方法实例化类:
Object class1Object = Class.forName("Class1").newInstance();
问题在于,“Class1”的依赖项没有被注入到对象实例字段中,我知道这是完全正常的,因为我正在手动实例化该类。我需要注入依赖项,所以,我需要一个神奇的方法来做到这一点:
CDI.injectAllDependencies(class1Object);
有什么想法吗? 请不要指望我停止手动实例化类。我的情况需要这样的方法。提前致谢。
【问题讨论】:
-
没有。如果它看起来像它那样工作,这可能是一个选择。它实例化“Class1”类并注入其所有依赖项。我说的对吗?
-
有没有办法以编程方式而不是通过 beans.xml 注册它?
标签: jakarta-ee reflection cdi