2012-10-23 88 views
0

我有在我重新創建使用該的ICEfaces和JSF Managed Bean的

FacesContext 
      .getCurrentInstance() 
       .getExternalContext() 
       .getSessionMap() 
        .put("myBean" , new MyBean()); 

我的綠豆現在所有的價值都走了,但一個價值仍然存在,並得到提交下一次,並銷燬所有輸出JSF應用程序(我的意思是它顯示錯誤的輸出)。
其實我正在使用ICEFACES自動填寫標記,並且此字段提交的值未被刪除。
Icefaces是否使用另一張地圖作爲它的豆子?如果是,那麼我如何從icefaces會話映射獲取bean?
我無法理解這個問題。任何人都有想法?

回答

0

顯然你是在錯誤的時刻重新創建它。您需要在調用操作階段執行此操作,而不是之前。否則,更新模型值階段將仍然使用提交的值填充bean。

+0

你能告訴我該怎麼做代碼? – khan

+1

很難說沒有看到SSCCE。您只顯示了一行,沒有任何上下文。從問題的何時/何時被調用,這個問題並不清楚。關於這一點;你只需要確保它在調用操作階段被調用,而不是更早。就這樣。例如,在命令按鈕動作(偵聽器)方法中。 – BalusC