2012-08-27 88 views
0

我使用(JSF和JPA)創建了一個Web應用程序,然後將其部署到Glassfish Application Server。請求的視圖無法恢復

它工作正常,但當我離開應用程序閒置一段時間,也許一個小時,然後嘗試使用該應用程序,它會拋出異常表示(請求的視圖無法恢復)。

而當我在Glassfish中重新加載我的應用程序時,它再次正常工作,我該如何解決這個問題?

回答

0

這是一個ViewExpiredException,當狀態保存方法設置爲server(默認)並且您向該會話中不存在的視圖發出發佈請求時會觸發該視圖。

解決此問題的一種方法是在拋出此類異常時將用戶重定向到特定頁面。您可以在web.xml中爲此配置一個錯誤頁面。

<error-page> 
<exception-type>javax.faces.application.ViewExpiredException</exception-type> 
<location>/errorpage.xhtml</location> 
</error-page>