兩個@ViewScoped託管Bean之間的通信存在很大的問題。 以下列表顯示了我已完成此操作的方式。 UserAddEditMB被注入到UserSearchMB中,當用戶點擊帶有onAdd動作的按鈕後,它調用UserAddEditMB init方法。 最後有導航規則到我的第二種形式,但u1和u2都是空的。兩個@ViewScoped之間的JSF 2.0通信,注入
這是在兩個@ViewScoped託管的bean中執行通信的好方法嗎?
@ManagedBean
@ViewScoped
public class UserSearchMB {
@ManagedProperty(value ="#{userAddEditMB}")
private UserAddEditMB userAddEditMB;
public void onAdd(){
userAddEditMB.init(String param1, String param2);
return "userAddEdit";
}
...
}
@ManagedBean
@ViewScoped
public class UserAddEditMB {
private String u1;
private String u2;
public void init(String param1, String param2){
this.u1 = param1;
this.u2 = param2;
}
....
}
的可能重複[注入一個視圖在另一個視圖範圍的bean作用域bean導致它被重新創建(http://stackoverflow.com/questions/14231044/injecting -one-view-scoped-bean-in-another-view-scoped-bean-causes-it-to-be-recre) – BalusC 2013-04-23 16:44:59