Java Struts2验证中的奇怪行为

Java Struts2验证中的奇怪行为,java,validation,struts2,Java,Validation,Struts2,我有一个Struts 2应用程序,验证工作正常,它验证必要的字段并抛出适当的错误消息。问题出现在一个非常特定的位置,即字符编号5838 在我的validation.xml文件中定义了许多字段,其中一个是 <field name="idState"> <field-validator type="requiredstring"> <param name="expression"><![CDATA[

我有一个Struts 2应用程序,验证工作正常,它验证必要的字段并抛出适当的错误消息。问题出现在一个非常特定的位置,即字符编号5838

在我的validation.xml文件中定义了许多字段,其中一个是

   <field name="idState">   
      <field-validator type="requiredstring">
        <param name="expression"><![CDATA[
           idNumber == null || idNumber.trim().length() == 0 
        || (idState != null && idState.trim().length() > 0)
          ]]></param>  
        <message>Please enter your State.</message> 
      </field-validator> 
   </field>
使我感到好笑的是,我只得到了

"Please enter yo". 
这发生在位置5838(即错误消息截断)

现在,如果我在标记中添加一个空格

"Please enter y". 
我注意到这只发生在5838号位置。在此之前和之后的所有消息都会正确显示


关于发生了什么事,有什么线索吗?

对我来说,这个特定的验证器似乎没有什么问题。听起来更像是解析整个validation.xml文件的问题。也许错误消息只是因为它在读缓冲区的中间而被破坏。 类似的事情发生在我身上,它是一个非UTF-8文件中的UTF-8字符。
我的建议是在5838位置之后检查整个文件是否存在可能的解析问题。

对我来说,与这个特定的验证器无关。听起来更像是解析整个validation.xml文件的问题。也许错误消息只是因为它在读缓冲区的中间而被破坏。 类似的事情发生在我身上,它是一个非UTF-8文件中的UTF-8字符。
我的建议是,在位置5838之后,检查整个文件是否存在可能的解析问题。

此问题是否与错误消息有关,而不是与验证器有关?什么是字符号5838?此问题是否与错误消息而不是验证程序有关?什么是字符号5838?
"Please enter y".