Rachel
Rachel

Reputation: 103397

WARNING: FacesMessage(s) have been enqueued, but may not have been displayed

In my application, faces messages are not rendered on UI, not sure what is exactly causing this issue. In the server log I see this:

WARNING: FacesMessage(s) have been enqueued, but may not have been displayed.

What is the reason for such kind of situations?

Upvotes: 7

Views: 15776

Answers (2)

Daniel
Daniel

Reputation: 37051

Make sure that you have placed <h:message for="..."> or <h:messages> tag in your page, see also JSF 2 message and messages example

Upvotes: 11

Ralph
Ralph

Reputation: 4868

Another reason why a error message is not displayed could be, that the error occurs in the RENDER_RESPONSE phase of the JSF lifecycle. In this scenario a warning may be logged which says something like “FacesMessage(s) have been enqueued, but may not have been displayed“.

The reason in this case is, that in the render response phase the component tree is traversed and each component is rendered successively. When an error occurs after the message component finished rendering, it is not possible to add another message to it.

In this case a possible solution would be to place the message component at the end of the component tree. See also this blog.

Upvotes: 1

Related Questions