SpringMVC表单验证 @Validated不生效,org.springframework.validation.BeanPropertyBindingResult: 0 errors

2023-05-16

问题描述:使用@Validated进行表单验证,发现不生效。进入Controller后BindingResult:org.springframework.validation.BeanPropertyBindingResult: 0 errors。

问题定位:

表单提交,在org.springframework.validation.DataBinder#validate(java.lang.Object...)方法中打个断点,发现getValidators()方法的返回值size为0,所以无法进入表单验证的方法validator.validate(getTarget(), getBindingResult());

解决方法:

项目中注册校验器LocalValidatorFactoryBean或者自定义一个校验器,然后在“相应的”Controller中指定校验器。

<bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
    <property name="providerClass" value="org.hibernate.validator.HibernateValidator" />
</bean>
@Autowired
private LocalValidatorFactoryBean validator;

@InitBinder
public void initBinder(DataBinder binder) {
    if (binder.getTarget() instanceof ShopCargo) {
        binder.setValidator(validator);
    }
}

重启后再次提交,发现已经表单验证已经生效

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SpringMVC表单验证 @Validated不生效,org.springframework.validation.BeanPropertyBindingResult: 0 errors 的相关文章

随机推荐

  • 2022 PAT 甲级秋 100分

    PAT2022秋 有一题是卡着时间复杂度去做的结果AC了 希望大家也能来一起交流下最优解 踩气球 AC 这道题调试了很久 才开始用的哈希表内存太大了 span class token macro property span class to
  • 十大排序 C++代码

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • 位运算实现加减乘除、交换

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • 智能指针模拟实现C++

    span class token keyword template span span class token operator lt span span class token keyword typename span span cla
  • 转:卷积神经网络的卷积核大小、个数,卷积层数如何确定呢?

    卷积神经网络的卷积核大小 卷积层数 每层map个数都是如何确定下来的呢 xff1f 看到有些答案是刚开始随机初始化卷积核大小 xff0c 卷积层数和map个数是根据经验来设定的 xff0c 但这个里面应该是有深层次原因吧 xff0c 比如下
  • 生产者消费者模型c++

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • 关于vscode断点调试

    很多人习惯在 Chrome 的调试窗口中调试 Vue 代码 xff0c 或者直接使用 console log 来观察变量值 xff0c 这是非常痛苦的一件事 xff0c 需要同时打开至少 3 个窗体 个人还是更加习惯于断点调试 这篇文章将介
  • 斐讯T1电视盒子刷机指南,已排大坑

    斐讯T1刷机详细指南 xff0c 老手直接看小标题的括号 1 准备好一些文件 xff08 中心思想就是刷写工具 降级img 新系统img xff09 1 0 你需要准备一条双usb头的线 1 1 新系统固件 1 2 斐讯T1官方系统降级文件
  • 关于在conda环境下,pip已安装好包,但是python import错误的解决方法

    1 pip uninstall 那个包 2 conda install 那个包 或者 复制系统python目录下的Lib gt site packages文件夹覆盖conda虚拟环境下的对应文件夹 原因 xff1a pip为系统的pip x
  • win10 系统 U盘无法删除卷

    我的一个U盘折腾来折腾去 xff0c 现在用win10 自带分区磁盘管理的时候 xff0c 右键U盘 删除卷 xff0c 显示不支持该请求 解决办法 xff1a 1 cmd中运行diskpart 2 lisk disk 3 sel disk
  • termux 修改自定义字体

    需要先安装termux styling termux 运行chfont可修改预设的二十几种字体 xff0c 接下来的操作可以添加自己的字体 将字体文件复制到 termux fonts 里 xff0c 再运行chfont就能看到自己的字体了
  • windows平台,mingw64编译环境下的socket使用

    代码并不重要 xff0c 主要看最后的编译命令 xff1a span class token comment test cpp span span class token macro property span class token di
  • [有/无]刷,[直/交]流,[同/异]步,各种电机概念区分

    本质上 xff0c 所有的电机都是交流电机 直 交流电机 xff0c 通常是俗语 要想让电机转子转起来 xff0c 任何电机的绕组都要不断地改变电流方向 xff0c 电流大小呈正弦波或者方波 xff08 方波也可看做正弦波近似 xff09
  • opencv 快速简单二值化的做法

    大家在网上搜索opencv二进制 xff0c 很多人会告诉你用threshold等函数 这类函数虽然支持自适应等功能 xff0c 但是参数比较多 xff0c 有点复杂 我们只要简单二值化的时候可以用以下做法 xff1a Mat img sp
  • ubuntu18.04 使用systemd方式添加开机运行sh脚本

    ubuntu18 04压根就没有rc local xff0c 而且很多发行版都推荐使用systemd而不是initd了 1 准备好你的sh脚本文件 内容略过 xff0c 就假设路径是 usr local my my sh吧 别忘了chmod
  • 转:安装了anaconda不需要安装CUDA和cuDNN

    我电脑i7 1060 xff0c 之前一直在找匹配的cuda和cudnn xff0c 安装出现各种问题 xff0c 直到高人提醒 xff0c anaconda自带cuda和cudnn 我打开开始菜单里的anaconda里的navigator
  • 嵌入式基础接口-UART

    UART 通用异步收发传输器 xff0c UART是一种通用串行数据总线 xff0c 用于异步通信 该总线双向通信 xff0c 可以实现全双工传输和接收 UART引脚 1 VCC xff1a 供电引脚 xff0c 一般接3 3V xff0c
  • SonarQube Unsupported JDBC driver provider: mysql

    安装SonarQube8 0 xff0c 修改配置文件改为MySQL时报错 jvm 1 WrapperSimpleApp Encountered an error running main org sonar process Message
  • IDEA没有Services视图

    重新打开了下项目 xff0c 发现IDEA下面Services视图没有了 xff0c 启动服务非常不方便 解决方法 xff1a 在项目中搜索 workspace xml xff0c 找到 lt component name 61 34 Ru
  • SpringMVC表单验证 @Validated不生效,org.springframework.validation.BeanPropertyBindingResult: 0 errors

    问题描述 xff1a 使用 64 Validated进行表单验证 xff0c 发现不生效 进入Controller后BindingResult xff1a org springframework validation BeanPropert