При использовании ajax получаем вплывающее окно
========================
User Session Expired
To reconnect click the Reload button on the
browser or click the button below
Reload
========================
При этом в логах Glassfish отмечается строка вида:
WARNING: queued exception
javax.faces.application.ViewExpiredException: viewId:/index.xhtml - View /index.xhtml could not be restored.
Одна из причин подобного поведения - использования базовой авторизации. AJAX запросы не отправляют информацию об авторизации.
Как одно из решений данной проблемы - использовать следующий код в web.xml
<context-param>
<param-name>com.sun.faces.enableRestoreView11Compatibility</param-
name> <param-value>true</param-value>
</context-param>
Это заставит работать в режиме совместимости с JSF1.1
Можно "подавить" вывод этого окошка кодом:
<context-param>
<param-name>org.icefaces.disableDefaultErrorPopups</param-name>
<param-value>true</param-value>
</context-param>
Подписаться на:
Комментарии к сообщению (Atom)
Комментариев нет:
Отправить комментарий