Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java注释设置字符串的字符限制_Java_Jboss_Seam - Fatal编程技术网

使用Java注释设置字符串的字符限制

使用Java注释设置字符串的字符限制,java,jboss,seam,Java,Jboss,Seam,我正在尝试为我的JBossSeam项目创建一个字符长度限制为12的字符串。字符串必须为12个字符或空白。我的长度注释正确,如下所示: @Length(min = 12,max = 12) 但是,当我尝试在其中输入null值时,我得到一个InvalidStateException:validation fail错误。你知道怎么允许吗 字符串的Null值和空字符串不是一回事。您正在传递一个空值(不是长度为0的字符串)。看看这个: 另外,您应该尝试@Size(min=,max=)。我决定不

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

    @Length(min = 12,max = 12)

但是,当我尝试在其中输入null值时,我得到一个InvalidStateException:validation fail错误。你知道怎么允许吗

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


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

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

您是否尝试使用
@Nullable
批注?尝试了此操作没有帮助。同样的错误。大小部分不是问题所在。它正确地只允许12个字符,任何少于或多于12个字符都将产生警告。出现错误的是空场景。需要建议,如何仅使用@Size应用整数检查?hibernate是否提供了允许maxLength和NumberOnly组合的任何此类注释?