0
使用JSF 2.0和Spring,我使用的託管bean爲@RequestScope
。這個bean存儲關於登錄用戶的信息。它加載從DB用戶在@PostConstruct
方法:然後JSF生命週期 - 在請求完成後執行託管bean方法
@PostConstruct
public void init() {
String username = login.getUsername();
user = userDao.load(username);
}
的登錄用戶可以對更新數據庫的用戶頁面上的動作觸發(使用另一個託管bean)。
然而,@RequestScope
豆在所述請求,該請求是之前呼叫到更新動作的開始構成。因此,當頁面重新顯示時,User
變量仍然具有其舊值。
我的問題是:我是否有辦法在請求開始時不運行我的加載方法,但之後的請求已發送?還是我以錯誤的方式處理這個問題?然後
感謝您的洞察力,
塞巴斯蒂安
實際上,似乎發生的是Request bean已創建,然後調用另一個託管bean並注入_another_ Request bean。然後我修改並設置了我的用戶的新值,但它對我的初始請求對象沒有任何影響。有沒有辦法將初始請求對象傳遞給我的其他管理器bean,或者檢索它? – 2011-01-27 19:28:34