Jsf 注入使用带值的@Named的Bean
如何注入使用Jsf 注入使用带值的@Named的Bean,jsf,cdi,inject,Jsf,Cdi,Inject,如何注入使用@命名的注释和值的Bean @Named public class LanguageService{ ... } public class SomeOtherBean{ @Inject private LanguageService languageService } 工作没有问题-但如何注入,如果我使用: @Named("lang") public class LanguageService{ ... } @Inject不能像@Managed
@命名的注释和值的Bean
@Named
public class LanguageService{
...
}
public class SomeOtherBean{
@Inject
private LanguageService languageService
}
工作没有问题-但如何注入,如果我使用:
@Named("lang")
public class LanguageService{
...
}
@Inject
不能像@ManagedProperty
那样具有值。(但我不想留在CDI)
编辑:
我注意到这个豆子怎么命名并不重要。导致NPE的错误很简单,我手动创建了SomeOtherBean
,并创建了ofc。没有注射。我的错。CDI根据类型(和限定符)而不是注释参数选择可注射bean。该名称用于从视图(例如facelets)寻址CDIBean。CDI根据类型(和限定符)而不是注释参数选择可注入bean。该名称用于从视图(例如facelets)中寻址CDIBean