根据JSR
303规范:
3.2。约束声明
约束声明主要通过注释放置在类或接口上。约束注释(请参阅第2.1节)可以应用于类型,任何类型的字段或任何与 JavaBeans兼容的 属性。
(强调我的)
根据JavaBeans规范:
8.3.1简单属性
默认情况下,我们使用设计模式通过查找以下形式的方法来定位属性:
public <PropertyType> get<PropertyName>();public void set<PropertyName>(<PropertyType> a);
因此,属性名称为
_testString,它正在寻找一个名为getter / setter的getter / setter
get_testString(),
set_testString()在您的情况下不存在。
您的代码准则与JavaBeans规范冲突,因此,当您将注释放在名称与JavaBeans规范冲突的属性上时,JSR-303
bean验证将根本无法工作。JSR-303找不到与属性名称关联的getter / setter,因此在调用它们时将无法执行验证。
修改代码准则以符合标准,或者将注释放在getter上并使用它。另请参见标准Java代码约定。



