- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
现在在我的保存操作中,我定义了一个名为 booking 的模型,如下所示:
Class BookingAction {
private Booking booking;
...
}
Class Booking {
private String bookingNo;
private String status;
...
private List<Part>parts = new ArrayList<Part>();
...
}
Class Part {
private String partNo;
...
}
我还为该操作定义了一个验证 xml 文件,例如
<validators>
<field name="booking.status">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>${getText("MandatoryFieldEmpty",{"%{getText(\"BookingMain.status\")}"})}</message>
</field-validator>
</field>
<field name="booking.bookedBy">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>${getText("MandatoryFieldEmpty",{"%{getText(\"BookingMain.bookedBy\")}"})}</message>
</field-validator>
</field>
....
我也可以为 Part 定义这种配置吗?
Part 在列表中,List 是 Booking 的属性,有人能告诉我是否可以在 BookingAction-validation.xml 中进行 Part 的验证吗?
最佳答案
您可以使用 Visitor Validator ;
您应该添加 <validator type="visitor">
与 parts
相关的片段在你的对象 BookingAction-validation.xml
激活访问者验证;
然后,您需要创建一个 Part-validation.xml
包下Part
对象(而不是 Action
对象的包),并在那里指定单个 Part 元素的规则。
Struts2 Validation Interceptor
将使用第二个文件负责验证列表的每个元素。
作为一个很好的副作用,如果你包含一个 List<Part>
另一个对象 Action
,您对 Part
的验证对象将已经存在,无需在另一个文件中重写它(您只需要在 Action-validation.xml 文件中声明验证程序片段)。
编辑
您可以通过使用更具体的 Bean-context-validation.xml
来指定不同的上下文来触发对同一 bean 的进一步补充验证。文件,仅在某些特定情况下。
阅读this detailed example ,尤其是 Visitor Validation Example
(以及以下 Visitor Validation with the Expression Validator
)部分。
关于java - 我可以在 xxxx-validation.xml 中为列表配置验证吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16120718/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
我想格式化 UITextField用于输入信用卡号,使其只允许输入数字并自动插入空格,以便数字格式如下: XXXX XXXX XXXX XXXX 我该怎么做? 最佳答案 如果您使用 Swift,请阅读
我正在尝试使用以下代码创建信用卡类型文本,但无法做到这一点,有什么办法吗? func textField(textField: UITextField, shouldChangeCharactersI
我有一个 16 个字符的字符串,它是这样的: 1234567891234567 我需要能够格式化字符串,因为它会出现在系统中,即 XXXX-XXXX-XXXX-4567 注意上面显示的 4567 位数
List list = fromStudentTable(); Map map = new HashMap(); for (Student i : list) { map.put(i.getD
我需要将这六个字段保存在同一列中,但不在同一行和同一单元格中。每个字段都有默认的 GUID。所以我决定将默认的 GUID 放在一个列表中,将字段放在一个列表中,并在我们想要的地方调用该特定列表的对象。
我刚刚开始使用 stackify 的 Retrace 来监控我的应用程序,并且看到了数千个错误,这些错误是: System.FormatException: Guid should contain 3
我使用的是演练:第 1 部分 - 创建基本项目系统,完全按照网站 http://msdn.microsoft.com/en-us/library/cc512961.aspx 上的说明使用以及与从 ht
我正在使用 antd 表单项,我尝试了以下模式,但它不起作用。 rules: [{ pattern: new RegExp("^d{4}-d{2}-d{4}$"), messag
当我的数据库离线时,我没有遇到这个错误。我刚刚使用 db4free.net 使我的数据库联机。 每次登录都会出现此错误。有人能指出哪里出了问题吗? private void btnLogIn_Clic
当我的数据库离线时,我没有遇到这个错误。我刚刚使用 db4free.net 使我的数据库联机。 每次登录都会出现此错误。有人能指出哪里出了问题吗? private void btnLogIn_Clic
我有以下代码(如果我保留警告,它可以编译并正常工作,我还没有使用 global::hack 对其进行测试): namespace NotifierService.Models {} namespace
我迷路了:我正在尝试让 MySQL 在我的一个小型控制台程序中工作;我有一个在本地主机上运行的 MySQL 服务器,我可以通过 MySQL Workbench 8.0 CE 访问它。那里没问题。我的程
当我尝试构建我的应用程序时,链接器给出大量错误,如下所示: modlauch.obj : error LNK2005: "public: virtual __thiscall lolbutton::~
我对 Excel VBA 还很陌生。到目前为止,我已经在这个网站上阅读并学到了很多东西,但还没有找到解决我的问题的方法。 作为宏的一部分,我有以下代码: With Worksheets("Oracle
如上所述。我举一个例子,假设所有的测试值都小于1但大于0。 0.12(精度:3,小数位数:2) 0.345(精度:4,小数位数:3) 0.6789(精度:5,小数位数:4) 如何在不对比例和精度值进行
我收到四个“在 com.rusapp.batch.trans.OLFMWriter 类中找不到属性“xxxx”的 setter ”。该类中的第五个 bean,inputQueue,没有错误。其余的在下
我在 javascript 中有 2 个字符串,其中包含代表文件版本的数字。 即 var str1 = "11.11.1111.1111" var str2 = "11.22.3333.5555" 如
package com.test.nativeapp; import android.support.v7.app.ActionBarActivity; import android.os.Bundl
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: A comprehensive regex for phone number validation 什么是正
我是一名优秀的程序员,十分优秀!