ВНИМАНИЕ: FacesMessage(s) были поставлены в очередь, но, возможно, не отображались
В моем приложении сообщения лиц не отображаются в пользовательском интерфейсе, не уверен, что именно вызывает эту проблему. В журнале сервера я вижу это:
ВНИМАНИЕ: FacesMessage(s) были в очереди, но, возможно, не отображались.
В чем причина таких ситуаций?
2 ответа
Убедитесь, что вы разместили <h:message for="...">
или же <h:messages>
тег на вашей странице, см. также JSF 2 сообщение и пример сообщения
Другая причина, по которой сообщение об ошибке не отображается, может заключаться в том, что ошибка возникает в фазе RENDER_RESPONSE жизненного цикла JSF. В этом сценарии может быть зарегистрировано предупреждение, которое говорит что-то вроде "FacesMessage (s) были поставлены в очередь, но, возможно, не отображались".
Причина в этом случае состоит в том, что в фазе ответа рендеринга дерево компонентов просматривается, и каждый компонент рендерится последовательно. Когда ошибка возникает после того, как компонент сообщения завершил рендеринг, невозможно добавить другое сообщение к нему.
В этом случае возможным решением было бы разместить компонент сообщения в конце дерева компонентов. Смотрите также этот блог.