我如何注入一个使用@Named注解和值的Bean?
@Named
public class LanguageService{
...
}
public class SomeOtherBean{
@Inject
private LanguageService languageService
}工作没有问题-但如何注入,如果我使用:
@Named("lang")
public class LanguageService{
...
} @Inject不能像@ManagedProperty那样具有值。(但我不想留在CDI)
编辑:我注意到bean是如何命名的并不重要。我的错误导致NPE的原因很简单,那就是我手动创建了SomeOtherBean和ofc。不进行任何注射。是我的错。
发布于 2012-11-16 18:50:10
CDI通过类型(和限定符)而不是注释参数来选择可注入的bean。该名称用于寻址视图中的CDI bean,例如facelets。
https://stackoverflow.com/questions/13414785
复制相似问题