【问题标题】:How to change the Struts2 validation error message in the case of an invalid field value?在无效字段值的情况下如何更改Struts2验证错误消息?
【发布时间】:2011-02-03 01:09:57
【问题描述】:

我在 Web 表单上使用 Struts2 验证。在假设字段是整数或日期的情况下,我收到的<s:fielderror> 消息是通用的Invalid field value for field "[fieldname]" 自然,我想为用户自定义它。

这是一个验证示例:

<field name="spouseDOB">
    <field-validator type="date">
        <message>"Spouse Date of Birth" is invalid.</message>
    </field-validator>
    <field-validator type="date">
        <param name="min">01/01/1900</param>
        <message>"Spouse Date of Birth" must be after 1900 AD.</message>
    </field-validator>
</field>

对于我尝试过的任何无效日期,消息"Spouse Date of Birth" is invalid. 永远不会出现。输出是通用的Invalid field value for field spouseDOB

spouseDOB 是动作类中的 java.util.Date 对象。它由 JSP 中的 &lt;s:textfield&gt; 设置。

【问题讨论】:

  • 好吧,至少我为此获得了 Tumbleweed 徽章。 . .

标签: java validation jsp struts2


【解决方案1】:

在您的 ApplicationResources.properties 文件中,插入

invalid.fieldvalue.spouseDOB = "Spouse Date of Birth" is invalid.

如果您没有该文件,请查看this

【讨论】:

  • 我无法验证这个答案是否解决了去年的这个问题。
  • yuudachi,作为参考,这个答案是正确的。 invalid.fieldvalue.XXX(XXX为fieldName)是覆盖默认conversionValidation错误消息所需的消息资源键!
  • 为我解决了这个问题。
【解决方案2】:

在定义动作类的同一包中创建一个属性文件

"youactionclassname.properties" 文件并为其添加错误,

点赞"invalid.fieldvalue.yourfiledname = as you want for error ",然后下一个。

  1. 保存
  2. 然后重新启动服务器
  3. 运行

现在你可以看到,错误是自定义的......

告诉我是否有效

祝你好运

【讨论】:

  • 大约五年前我问过这个问题!此后我多次换工作,当然无法访问相关代码。
【解决方案3】:

嗯,它缺少&lt;/message&gt; 一件事

【讨论】:

  • 我很确定实际代码中不存在错误。
猜你喜欢
  • 1970-01-01
  • 2021-10-03
  • 1970-01-01
  • 2016-03-30
  • 1970-01-01
  • 1970-01-01
  • 2020-08-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多