如果在瀏覽器中打開xpage幾個小時,然後當我回來並嘗試點擊尋呼機(進行部分刷新)時,它不起作用。那麼,我該如何自動檢測並強制進行全面更新?它有可能嗎?部分刷新不起作用時,如何自動刷新頁面?
3
A
回答
5
答案取決於你想要完成什麼,以及你願意做什麼。部分刷新失敗的原因是因爲用戶的XSP會話已超時,所以有關特定用戶的頁面視圖的信息已過期,並且不能只是「開始工作」。必須發生的是,您需要設計並實現一種方法來維護和重新加載頁面狀態,然後必須在新會話中恢復,否則會話不會首先過期。第二種方法是最簡單的,第一種方法非常困難。在應用程序設置的XPages選項卡上有一個設置,允許您控制應用程序的超時。將該值設置得更高,以使頁面保持更長時間的活動狀態。由於會話在內存中的時間越長,所需的內存就越多,從而導致可伸縮性降低,這裏有一個折衷。或者,您可以在onError中構建一些邏輯來檢測失敗的局部刷新,然後執行全面刷新以重新建立會話,但任何會話數據都將丟失。
2
在ExtLib中尋找xe:keepSessionAlive控件。它會定期ping服務器,所以會保持你的會話活着。
如果有太多用戶打開瀏覽器,請注意性能問題。
相關問題
- 1. 頁面自動刷新而不刷新
- 2. 頁面刷新後自動滾動不起作用
- 3. 手動刷新局部視圖在自動ajax刷新後不起作用
- 4. 自動刷新php頁面
- 5. 頁面自動刷新onClick
- 6. 刷新頁面自動
- 7. 自動刷新頁面
- 8. PHP - 自動刷新頁面
- 9. 得到部分刷新而不刷新整個頁面
- 10. 流星自動刷新不起作用
- 11. 如何自動刷新Java servlet頁面
- 12. 如何自動刷新Ejs頁面
- 13. 如何自動刷新頁面一次?
- 14. 如何阻止頁面自動刷新?
- 15. 如何不刷新頁面
- 16. javascript自動刷新div而不刷新整個頁面
- 17. 如何在刷新按鈕時僅刷新頁面的一部分
- 18. 使用UpdatePanel刷新部分頁面
- 19. 如何自動使用AJAX自動刷新頁面的一部分?
- 20. 刷新iframe而不刷新父頁面
- 21. 刷新div而不刷新頁面
- 22. 刷新div而不刷新頁面
- 23. 如何刷新頁面時,不顯示
- 24. 使刷新功能只刷新頁面的某些部分
- 25. 頁面刷新時hasClass不工作
- 26. Backbone刷新/書籤頁不起作用
- 27. 頁面刷新後jquery移動腳本不起作用
- 28. 部分頁面在IE中刷新
- 29. ajax刷新部分頁面錯誤
- 30. ManageIQ刷新不起作用
嗨傑里米 - 你有第一個選擇的例子嗎?我希望避免第二種選擇。 – pipalia 2012-03-04 23:15:10
Jeremy在局部刷新失敗時觸發了什麼事件,或者我應該像Frantisek提到的那樣,使用keepSessionAlive ExtLib選項? – pipalia 2012-03-11 22:11:02
我不認爲它會拋出一個錯誤...下注會在部分刷新的錯誤,但我認爲當會話過期,沒有發生,它只是返回一個空的結果 – 2012-03-12 16:51:05