2013-03-07 97 views
7

我想在另一個Managed bean中獲取會話作用域bean數據。當我這樣做的時候,值就是null,並且給出java.lang.NullPointerException錯誤。我是JSF的新手,所以請記住,我可能會錯過簡單的事情。在另一個ManagedBean中獲取會話作用域Bean數據

這裏是SessionScoped豆

@ManagedBean 
    @SessionScoped 

    public class UserSessionBean { 
     private superProcessId; 

     //getter setter and other code 
    } 

這裏是Managed Bean的,我試圖讓這個數據

@ManagedBean 
public class AddProcessBean { 
    @ManagedProperty(value="#{UserSessionBean}") 
    private UserSessionBean sessionData; 

    //Getter Setter for sessionData 
    public UserSessionBean getSessionData() { 
    return sessionData; 
    } 

    public void setSessionData(UserSessionBean sessionData) { 
    this.sessionData = sessionData; 
    } 

    public void addAction() { 
    System.out.println(getSessionData().getSuperProcessId()); 
    } 
} 

回答

11

你的價值是不是在@ManagedProperty好。使用:

@ManagedProperty(value="#{userSessionBean}") 

bean的默認名稱與第一個字母較小的類名相同。其託管屬性爲bean的範圍應該是session或更低(view,request)。

+0

Thanka很多partlov – SXV 2013-03-07 12:50:05

相關問題