使用Java注解为字符串设置字符限制

3

我正在尝试为我的JBOSS Seam项目创建一个字符长度限制为12的字符串。该字符串必须是12个字符或空白。我的长度注释是正确的,如下所示:

    @Length(min = 12,max = 12)

然而,当我尝试在其中放入一个null值时,我会收到一个InvalidStateException: validation fail错误。有什么想法可以允许这样做吗?

дЅ е°ќиЇ•дЅїз”Ё@NullableжіЁи§Јдє†еђ—пјџ - Rohit Jain
尝试过了,没有帮助。还是同样的错误。 - Icebreaker
2个回答

1

空值和空字符串不是同一回事。您传递的是一个空值(而不是长度为0的字符串)。请检查此内容:

Java中null和empty("") String的区别

此外,您应该尝试使用@Size(min=,max=)。


大小部分不是问题。它正确地只允许12个字符,任何少于或多于此数量的字符都会产生警告。而空值情况则会导致错误。 - Icebreaker
需要建议,如何使用@Size应用仅限整数的检查? Hibernate是否提供任何这样的注释,允许maxLength和numbersOnly的组合? - Pratik Ambani

0

好吧,我决定不依赖于@Length注释,而是创建了自己的自定义验证器类来完成这项工作,效果很好。无论如何,谢谢!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接