2014-12-03 46 views
0

我有一個web應用程序,其中超時功能已從web.xml中禁用,我們現在正在使用主面臨空閒監視器。這顯然是在JSF應用程序中。超時是動態的。由於應用程序的性質,在某些情況下,必須禁用超時。但是,當我將超時值設置爲0或-1時,會立即發生超時。有關如何禁用閒置顯示器的建議?禁用Primefaces空閒監視器

感謝,

回答

0

由於p:idleMonitor通常具有rendered屬性,你可以只將其設置爲false。如果必須按需完成,可以通過Ajax進行設置,例如,與RequestContext.update()如果你需要從支持豆做。
如果組件不再被渲染,它不應該觸發任何事件。我說不應該因爲我沒有測試過這個,它只是一個你要求的建議。

編輯
要設置會話超時,只是把會話config元素在web.xml(當然web-app下),這個數字是超時分鐘。

<session-config> 
    <!--session timeout every 20 minutes--> 
    <session-timeout>20</session-timeout> 
</session-config> 
+0

我很欣賞這種迴應。我發現,即使當我嘗試將渲染設置爲false或使用C:if test =「timeout!= 0」,超時仍然會發生。我試圖用一些更標準的東西來取代它。我使用元刷新goop在超時後將用戶發送回登錄頁面。但是,似乎在會話中設置MaxInativeInterval沒有做任何事情,因爲用戶從未真正被註銷。他們是否內置JSF的超時功能? – John87 2014-12-05 20:40:38

+0

@ John87補充說,以我的答案,使其更具可讀性。 – Zhedar 2014-12-06 00:22:50

+0

謝謝,但我不認爲你可以動態修改web.xml中的超時值?目前它設置爲-1,以期通過會話重置它?在這之前它需要設置爲正值嗎? – John87 2014-12-08 14:20:58