2011-02-23 28 views
1
public class SuperUser extends User implements Serializable{ 
    private static final long serialVersionUID = 1L; 

    private String username; 

    private String pin; 

//getters and setters 
} 

當我使用這個在一個託管bean和嘗試訪問它被Facelets文件中像這樣JSF 2.0豆延伸另一個bean目標不可達,「空」返回null

<h:inputText id="firstName" value="#{userManager.superUser.firstName}" required="true" maxlength="30" size="30"/> 

我得到一個異常

javax.el.PropertyNotFoundException: /superUser/create.xhtml @18,96 value="#{userManager.superUser.firstName}": Target Unreachable 

這是否意味着如果你想訪問它們的屬性你不能擴展java bean?

感謝

回答

3

這只是意味着#{userManager.superUser}返回null因此無法調用setFirstName()。 JSF不會爲你創建嵌套的對象屬性。你必須自己做。

要解決這個問題,只需確保在#{userManager}後面的backing bean類內部它不爲null。例如。

private SuperUser superUser = new SuperUser(); 
0

是用戶級的公共裏面的方法getFirstName()

同樣,userManager託管bean是否爲getSuperUser() public?

相關問題