3

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

    @Length(min = 12,max = 12)

但是,当我尝试在其中输入一个空值时,我得到一个 InvalidStateException:验证失败错误。任何想法如何允许这个?

4

2 回答 2

1

String 的 Null 值和空 String 不是一回事。您正在传递一个空值(不是长度为 0 的字符串)。看一下这个:

null 和空 ("") Java 字符串之间的区别

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

于 2013-07-03T15:47:59.230 回答
0

好吧,我决定不依赖 @Length 注释,而是创建了我自己的自定义验证器类来完成这项工作,并且效果很好。不管怎么说,还是要谢谢你!

于 2013-07-03T19:24:49.187 回答