struts2中单个操作的多个validation.xml中的问题

时间:2009-05-05 04:50:06

标签: validation struts2

我正在研究struts2应用程序。 我有一个有3个文本字段的jsp页面。我通过action-validation.xml文件验证每个字段。现在我希望如果验证在第一个字段失败,它不应该检查其他两个文件并且结果直接转到jsp页面(例如a.jsp),仅显示该单个字段的错误消息。如果验证在第一个字段没有失败,那么它应该检查文件的其余部分,即第二个和第三个文件结构,现在如果验证失败,那么结果也直接转到jsp页面但不同的一个(比如b.jsp)显示错误消息。 可能吗?如果是,那么请让我知道。

我试过这个但是action-validation.xml验证了单个镜头中的所有字段,所有字段的错误消息显示在我在a.jsp下编写的jsp页面中

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以在字段验证器中添加短路

e.g。

<!-- Field Validators for email field -->
  <field name="email">
      <field-validator type="required" short-circuit="true">
          <message>You must enter a value for email.</message>
      </field-validator>
      <field-validator type="email" short-circuit="true">
          <message>Not a valid e-mail.</message>
      </field-validator>
  </field>
  <!-- Field Validators for email2 field -->
  <field name="email2">
     <field-validator type="required">
          <message>You must enter a value for email2.</message>
      </field-validator>
     <field-validator type="email">
          <message>Not a valid e-mail2.</message>
      </field-validator>
  </field>

如果电子邮件为空或无效,则不会验证email2

http://struts.apache.org/2.x/docs/validation.html

“标记为短路的特定验证器故障将阻止后续验证器的评估”