在閱讀了很多Web上的例子之後,我找不到正確的方法來刷新jsf頁面程序的正確答案。 使用meta http-equiv="refresh" content="20"
時,有時候,當網絡非常繁忙時,我收到「網頁不可用」並且用戶失去了工作,但該應用程序仍在工作,當用戶按F5鍵可以繼續工作時,但這是不是解決方案。 那麼,有沒有其他方法可以刷新JSF頁面?請注意,我有非常小的服務器資源(我使用樹莓派),並不想使用例如Ajax來完成這項工作。 謝謝。什麼是刷新JSF頁面編程的最佳方法
回答
由於您有小型服務器資源,因此ajax方法可能會更好,因爲它可能不會刷新整個頁面。請注意,您必須正確設計它。
如果這是可以接受的,您可以使用PrimeFaces中的輪詢組件。
<p:poll interval="20" listener="#{yourManagedBean.keepAlive}"/>
這是一個針對ajax處理問題的link。
的特定部分感謝山田,我會嘗試! – user3157099 2014-09-23 13:14:57
可以舉一個Bean的方法示例 - keepAlive() - 我的意思是,在這20個sekonds中調用「#{yourManagedBean.keepAlive}將會做什麼。謝謝 – user3157099 2014-09-23 15:57:05
它可以是一個空白的方法..但是如果你想記錄用戶在同一個屏幕上用了多長時間,你可以使用它來達到這個目的。 – Yamada 2014-09-23 17:50:15
您還可以將您的主頁設置爲errorPage。如果網站不可用,您的網站將被重定向到該網站。在你的web.xml中配置:
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>yourHomepage.xhtml</location>
</error-page>
感謝Mahttias,這個聰明的解決方案 - 它工作,這意味着我們做了一個無限循環來檢查網站和只有瀏覽器網站的解決方案與ajax是好的,但是當我們沒有ajax - 我認爲你的想法是最好的,謝謝 – user3157099 2014-09-25 08:56:43
這不是問題的最佳解決方案,但它會幫助我。問題是,並非所有的網站,誰犯了「錯誤」必須在我的錯誤頁面結束。有沒有辦法只爲該網站的錯誤頁面 - 不是所有?謝謝。 – user3157099 2014-09-25 08:59:58
您可以爲不同的例外定義不同的錯誤頁面。我認爲使用Primefaces 5還可以使用表達式語言動態地定義errorPage的位置:[link](https://code.google.com/p/primefaces/issues/detail?id=6072&thanks=6072&ts=1377986205 ) – 2014-09-25 09:47:05
- 1. 允許在gwtp中刷新頁面的最佳方法是什麼?
- 2. 3秒後刷新頁面內容/值的最佳方法是什麼?
- 3. 刷新JTable的最佳方法是什麼?
- 4. 刷新JSF頁面
- 5. 編碼用戶頁面的最佳做法是什麼?
- 6. 這是自動刷新聊天頁面的最佳方式
- 7. 用javascript添加css到頁面的最佳方法是什麼?
- 8. ASP.net:處理清理頁面的最佳方法是什麼?
- 9. 用PHP刷新頁面的好方法是什麼?
- 10. 什麼是編程式添加.swf到asp.net頁面的最佳方式?
- 11. 考慮編程順序的最佳方法是什麼?
- 12. 爲Windows編程MIDI的最佳方法是什麼?
- 13. JSF問題刷新頁面
- 14. liferay jsf portlet頁面刷新
- 15. 強制在網頁上刷新圖片的最佳方式是什麼?
- 16. 刷新/更新部分MVC頁面的最「MVC」標準方式是什麼?
- 17. 用C#中的Timer刷新我的.aspx站點的最佳方法是什麼?
- 18. C#/ .Net中面向方面編程(AOP)的最佳/最流行的方法是什麼?
- 19. 刷新類的最佳方法
- 20. ANTLR4的最佳方法是什麼?
- 21. 評論的最佳方法是什麼?
- 22. 什麼是以編程方式使用Gmail的最佳方式?
- 23. 每XX分鐘刷新一些腳本功能的最佳方法是什麼?
- 24. 避免因刷新頁面而提交的最佳方式
- 25. 什麼是創建幫助頁面的最佳解決方案?
- 26. 回調/ noftify事件父頁面的最佳方式是什麼?
- 27. 什麼是處理頁面切換的最佳方式?
- 28. 什麼是調試asp頁面的最佳方式?
- 29. MVC2什麼是頁面表的最佳方式
- 30. 在iPhone中創建Feed頁面的最佳方式是什麼?
你想在哪個事件刷新頁面? – Smutje 2014-09-23 10:53:02
您在樹莓派PI中運行哪個JEE應用程序服務器? – Yamada 2014-09-23 11:45:31
@Smutje - 呃,其實我有一個線程,誰檢查我的商店中的新項目(帶狀態的數據表)。當線程在數據表中找到新項目時,線程必須通知客戶端新的更改。用舊的meta標籤,我正在刷新網站,我的backin bean檢查。現在我必須檢查線程並通知我的客戶端(用戶),他們等待着。 – user3157099 2014-09-23 12:09:09