- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我们的代码中,我们已经实现了 org.springframework.validation.beanvalidation.LocalValidatorFactoryBean 的子类,用我们自己的实现覆盖 validate(Object target, Errors errors),我们在其中运行验证,进行一些额外的处理并注册错误消息。
从3.0升级到3.1,好像不再调用这个方法了。同事调试了spring代码,发现好像调用的是签名为validate(Object target, Errors errors, Object... validationHints) 的方法,直接跳过了老的validate()。更改为使用带有 validationHints 的方法使事情再次起作用。
这个修复感觉有点奇怪并且容易在未来混淆。是否有另一种方法来处理更具前瞻性的验证?
最佳答案
在我们的项目中,我们采用了稍微不同的方法。我们还使用了 Spring 3.1,并且我们的两个 bean 都带有验证和自定义验证注释。我们的方法可能适用于您的场景,也可能不适用于您的场景,因为我不确定您在迁移到 Spring 3.1 之前最初使用的方法,但这里是。
当我们需要自定义验证时,我们不扩展 LocalValidatorFactoryBean,而是实现 org.springframework.validation.Validator 类。所以这个实现执行它自己的自定义代码并调用 Spring 的默认验证,这是通过一个 Autowiring 到我们的自定义验证器中的 bean 公开的。这是验证器代码:
@Component("myValidator")
public class MyValidator implements Validator {
@Autowired
private Validator springValidator;
@Override
public boolean supports(Class<?> clazz) {
return MyObject.class.isAssignableFrom(clazz);
}
@Override
public void validate(Object object, Errors errors) {
MyObject myObject = (MyObject) object;
// invoke spring default validator so validation annotations are processed
springValidator.validate(myObject, errors);
// custom validation
....
我们在 spring xml 文件中声明了以下 bean:
<bean id="springValidator"
class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"/>
通过上述实现,需要调用验证的类将通过调用 validator.validate(Object object, Errors errors) 来实现。同样,这就是为什么我不确定我们项目中采用的方法是否适用于您的原因,因为我不确定您使用的是相同的 validate(Object, Errors) 方法。
无论如何,希望对您有所帮助。
关于spring - 在 Spring 中子类化 LocalValidatorFactoryBean 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13155455/
在我们的代码中,我们已经实现了 org.springframework.validation.beanvalidation.LocalValidatorFactoryBean 的子类,用我们自己的实现
我遇到了一个问题,当 spring.jpa.properties.javax.persistence.validation.mode设置为 auto (这是默认设置)然后它会尝试验证我的实体,这很棒。
在我们的代码中,我们已经实现了 org.springframework.validation.beanvalidation.LocalValidatorFactoryBean 的子类,用我们自己的实现
我使用的是 Spring 3.1,并具有以下 spring 配置,其中我使用自己的 ValidationMessageSource 显式创建 LocalValidatorFactoryBean。我的类
除了 hibernate-validator 之外,你还知道 springframework 的 LocalValidatorFactoryBean 的实现吗? 我们不需要 hibernate-val
我正在尝试将 bean 注入(inject)自定义 ConstraintValidator .我遇到了一些事情: 在 validation-api-1.1.0 中支持 CDI(提供 Beta 版) H
我想创建简单的 Spring MVC 项目。 我得到了: Context initialization failed org.springframework.beans.factory.BeanCre
我是一名优秀的程序员,十分优秀!