Primefaces可编辑的dataTable和hibernate验证器

时间:2012-07-31 22:05:13

标签: jsf primefaces bean-validation hibernate-validator

我在PrimeFaces中有一个可编辑的dataTable,我正在使用Hibernate Validator进行bean验证。这适用于<p:inputText />元素。现在我想对可编辑的dataTable进行验证。

这就是发生的事情:

如果我输入有效值,页面会按预期更新 如果我输入无效值,当我点击“保存”时,检查标记没有任何反应 - 单元格仍然可以编辑,不会尝试数据库写入,也不会显示错误消息。

页面上有一个<h:messages />标记,为什么不显示错误消息?该组件似乎意识到存在问题,因为该行仍处于可编辑状态。

编辑:我启用了日志记录并看到了这个:

21:20:43,874 FINE  [javax.enterprise.resource.webcontainer.jsf.context] (http-localhost-127.0.0.1-8080-2) Adding Message[sourceId=demoTable:j_idt11:2:j_idt15,summary=Testing Hibernate Validator Error Message)

所以看起来上下文正在正确更新。似乎我需要做一些事情来触发它呈现的消息。

1 个答案:

答案 0 :(得分:0)

在jsf文件中使用以下语句,它应该有效:

<p:messages id="messages" showDetail="true" autoUpdate="true"
            closable="true" showSummary="false"/>