3
我試圖實現resource injection
很長一段時間,但無法成功。我使用JSF 2.2
,JDK 1.7.
而我的ide是eclipse luna
。資源注入問題JSF 2.2
我有一個會話範圍的bean,名爲UserBean
,視圖範圍的bean叫SettingsBean
。
我將它們設置在faces-config.xml
的UserBean爲session scoped
和SettingsBean作爲view scoped
與他們的bean名字 「settingsBean
」 和 「userBean
」
public class SettingsBean implements Serializable {
private static final long serialVersionUID = 1L;
@Inject // I also tried @ManagedProperty but didn't work
private UserBean userBean;
@PostConstruct
public void init(){
System.out.println(userBean.getUser().getFullName());
}
public UserBean getUserBean() {
return userBean;
}
public void setUserBean(UserBean userBean) {
this.userBean = userBean;
}
}
的問題是,我得到的UserBean爲空。這裏有什麼問題? 感謝您的幫助。
節目的UserBean,也是這兩個類的進口。 – pamps 2014-11-01 12:39:05
取決於一些事情。首先,您需要確保所有註釋都是對齊的,並且要從適當的包中進行對齊。然後確保你的項目中有一個正確定義的「beans.xml」文件。那麼你還需要明白,CDI的當前'@ ViewScoped'實現仍然是bug。 – kolossus 2014-11-03 01:11:39
感謝您的評論。 – rLyLmZ 2014-11-05 12:28:00