使用JSR303验证器和AJAX动态生成的网页

时间:2012-06-08 09:12:39

标签: java ajax model-view-controller jsf-2 bean-validation

我在JSF2.0,richfaces 4,基于MVC的网站上有很多蠢事。 我有一个网页,用户可以输入他的地址。

但是他可以选择仅输入1或3个地址。 首先只显示1个地址,然后通过选中一些复选框,他可以选择添加更多地址。

the page

the code

但是如果我使用JSR303验证器,那么即使对于非生成的地址,也会检查验证约束。

有没有办法为那些验证器添加转义?比如@NotEmpty(if =“chekboxe1”)

感谢。

1 个答案:

答案 0 :(得分:2)

这是一个已知问题,并没有直接的解决方案(google for keywords:multi-field JSR 303 custom custom annotations)。

尽管JSR 303的使用非常吸引人,但我们也可以认为数据方面的天气多属性验证是有意义的。我说的是多属性,因为你正在接近数据的验证过程而不是输入(归档)。因此,您可能会遇到某个用户(记录创建)对某些多重验证有意义但对另一个用户没有意义的情况(由管理员编辑)。

在我看来,你应该使用JSR 303进行非常基本的检查(例如,如果数据与数据库约束兼容),但对于前端细节,我会使用常规的JSF验证过程。