3 回答

TA貢獻2011條經驗 獲得超2個贊
為什么JSF需要保存服務器端UI組件的狀態?
在什么時候JSF在服務器端保存UI組件的狀態,以及何時從服務器內存中確切地刪除UI組件的狀態信息?
web.xml
:
<context-param> <param-name>com.sun.faces.numberOfLogicalViews</param-name> <param-value>15</param-value></context-param>
當應用程序上的登錄用戶通過頁面導航時,組件的狀態會在服務器上不斷累積嗎?
web.xml
:
<context-param> <param-name>javax.faces.STATE_SAVING_METHOD</param-name> <param-value>client</param-value></context-param>
javax.faces.ViewState
我不明白將UI組件的狀態保持在服務器端的好處是什么。直接將經過驗證/轉換的數據傳遞給托管bean還不夠嗎?我能/應該盡量避免嗎?
disabled
, readonly
rendered
如果有數千個并發用戶會話,那么服務器端不會消耗太多內存嗎?我有一個應用程序,用戶可以在其中發布關于某些主題的博客。這個博客很大。當出現回發或請求查看博客時,大型博客將被保存為組件狀態的一部分。這會消耗太多的內存。這不是個問題嗎?
<h:form>
<html>

TA貢獻1864條經驗 獲得超2個贊
“只要給應用服務器足夠的內存?!边?,我的印象是,如果我們談論的是數千個并發用戶會話,那么我們在這里談論的是企業級的東西。如果企業中有企業級設備,就不能像在家里的Linux盒中那樣“給appserver足夠的內存”。

TA貢獻1816條經驗 獲得超4個贊
你的回答很清楚,謝謝。如果將javax.faces.PARTIAL_state_Saving設置為true,為什么JSF閃存范圍會消失。(getFacesContext().getExternalContext().getFlash().put(“buildingId”,buildingId)
添加回答
舉報