2012-06-05 78 views
1

我在viewcope中有一個託管bean,我想重置使用此範圍的窗體。根據Baluc從這個帖子Reset JSF Backing Bean(View or Session Scope)
和我一樣的在我的代碼:重置ViewFope的JSF Backing Bean

public String reset(){ 
     FacesContext.getCurrentInstance().getViewRoot().getViewMap().remove("myBean"); 
     return "SamePage?faces-redirect=true"; 

    } 

但它無法正常工作。 有些人可以告訴任何解決方案。

+1

請描述錯誤。 「不工作」不夠具體。 –

回答

0

這個想法是,通過返回非空和非空的東西,你不需要調用FacesContext.getCurrentInstance().getViewRoot().getViewMap().remove("myBean")。以下應工作(最終):

​​

我說「終於」,是因爲我不記得如果視圖範圍的豆之前或呈現響應階段後銷燬。我懷疑這就是爲什麼BalusC建議將?faces-redirect=true加入回報值。

4

試試這個

public void reset(){ 

    FacesContext.getCurrentInstance().getViewRoot().getViewMap().remove("myBean"); 

} 

或本

public String reset(){ 

    return "SamePage"; 

} 
+0

好!第一個選項幫助我! +1 – Erick

相關問題