Spring WebFlow - 两个字段的一个验证

时间:2017-04-12 09:15:43

标签: java spring-webflow spring-validator

我正在使用Spring Webflow进行多页面表单,我有这个类(对于某个页面中的表单):

public class NameForm {
   @Size(min = 1, max = 120)
   @Pattern(regexp = GlobalRegex.NAME_REGEX)
   private String firstName;

   @Size(min = 1, max = 120)
   @Pattern(regexp = GlobalRegex.NAME_REGEX)
   private String lastName;

   private int variableX;
}

使用此模型的视图:

<view-state id="form" model="NameForm">
   <transition on="next" to="nextPage" validate="true">

   ...
</view-state

在某些情况下,约束如上面NameForm所示(名称在1到120个字符之间),但在其他情况下,这取决于variableX的值,我想要总和firstNamelastName的长度为1到65个字符。

我怎么能这样做?我听说我可以通过编程方式构建验证器,但我不知道如何才能实现我需要的这种限制。

感谢您的帮助。如果您需要任何其他信息,请询问。

1 个答案:

答案 0 :(得分:1)

经过大量研究后,我发现最好的方法是创建一个类级约束

我在这里找到了更多信息: https://docs.jboss.org/hibernate/validator/5.1/reference/en-US/html/validator-customconstraints.html#section-class-level-constraints