Po konfrontacji z przerażającym javax.faces.application.ViewExpiredException
musiałem rozejrzeć się po Internecie, aby znaleźć właściwe rozwiązanie. Na szczęście rozwiązania są łatwo dostępne i zastosowałem OmniFaces FullAjaxExceptionHandler.Cisza FullAjaxExceptionHandler
Dość powiedziane, jak z prawie wszystkim, od OmniFaces, zadziałało cuda. Ale za każdym razem mam widok upływającym Dostaję:
SEVERE: WebModule[/myModule]FullAjaxExceptionHandler: An exception occurred during processing JSF ajax request. Error page '/WEB-INF/errorpages/test.xhtml' will be shown.
javax.faces.application.ViewExpiredException: viewId:/my/page.xhtml - View /my/page.xhtml could not be restored.
...
Jest to dobre rozwiązanie, ponieważ jest obsługiwany zgodnie z oczekiwaniami, ale jest tam mimo uciszyć ten wyjątek od drukowanego do server.log? To dość szybko tłumi kłody.
Używam:
Mojarra 2.1.23
PrimeFaces 4.0-SNAPSHOT
OmniFaces 1,6-SNAPSHOT-2013-07-01
na
GlassFish 3.1.2.2
Dobry panie, jesteś dżentelmenem i uczonym! Wielkie dzięki. – blo0p3r
@ BalusC brakuje przełącznika w 'MyAjaxExceptionHandler # logException'. Ta linia musi znajdować się wewnątrz else: 'super.logException (kontekst, wyjątek, lokalizacja, komunikat, parametry);'. Ponadto, jeśli się nie mylę, face-config.xml '' musi być com.example.MyAjaxExceptionHandlerFactory. –
@Patrick: odpowiedź została zaktualizowana. Dzięki! – BalusC