在getter方法中添加的Faces消息不会显示在消息组件中

时间:2015-07-07 10:51:26

标签: jsf rendering message

我想要有条件地设置表格的单元格。这很容易且有效。

style="#{zoekOndernemingController.geldigeOnderneming(row) ? '' : 'color: red'}"

但是,正如您所见,条件位于后端。在函数geldigeOnderneming(Object o)中我添加了一个faces消息,但是不显示此消息。是因为从某些属性调用后端函数时存在限制,例如样式?

我不知道它为什么没有显示,我也不知道如何调试它。在互联网上我找不到任何关于此的信息,所以非常感谢任何帮助!

PS面临的消息添加如下:

public static void addFacesMessage(final FacesMessage fm) {
    final FacesContext ctx = JSFUtils.getFacesContextInstance();
    ctx.addMessage(null, fm);
}

它在其他地方完美运作......

1 个答案:

答案 0 :(得分:4)

您基本上是在渲染响应期间尝试添加faces消息。如果消息(s)组件在那时已经很长时间呈现,那就太晚了。

<h:messages />
...
<h:someComponent someAttribute="#{bean.someMethodWhichAddsMessage()}" />

如果换掉组件,它将“正常工作”。