zoukankan      html  css  js  c++  java
  • 【坑】springMvc 信息校验,读取不到错误配置信息的问题


    前言

    springMvc 的一大利器,validation 检验,通过注解,可以帮我们完成校验,很是顺手。

    终极偷懒检验,使用配置文件,将错误提示信息配置到配置文件里面,便于在修改错误信息,直接在文件里面修改,而非去每个注解里面找。

    但是就是这么个小东西,有个问题,足足困扰了很久,那就是总是读取不到错误配置信息,

     @NotEmpty(message = "{user.name.empty}", groups = {First.class})
        private String userName;
    

    总是直接将 user.name.empty 直接返回,而不是去读取错误信息的配置文件,当初在学校学的时候,就没搞定,不了了之了;


    ResourceBundleMessageSource

    后来经过好久好久的百度,还是没解决,

    对于配置文件的加载,大家包括我在学的时候,都是使用 ReloadableResourceBundleMessageSource 类;

    都是这样配置的:

    <!-- 校验错误信息配置文件 -->
    <bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource">
        <!-- 资源文件名 -->
        <property name="basenames">
            <list>
                <value>classpath:CustomValidationMessage</value>
            </list>
        </property>
        <!-- 资源文件编码格式 -->
        <property name="fileEncodings" value="utf-8"/>
        <!-- 对资源文件内容缓存时间,单位秒 -->
        <property name="cacheSeconds" value="120"/>
    

    谁能想到这个类有问题呢,反正大家都没问题。

    最后将加载类换成 ResourceBundleMessageSource ,错误配置文件被加载了。。。


    后记

    至今仍然不知道大家是怎么使用 ReloadableResourceBundleMessageSource 加载到的,而我又是怎么加载不到的。。。

  • 相关阅读:
    PAT 1142 Maximal Clique
    PAT 1076 Forwards on Weibo
    PAT 1021 Deepest Root
    PAT 1030 Travel Plan*
    diji模板
    PAT 1020 Tree Traversals
    PAT 1108 Finding Average
    PAT 1104 Sum of Number Segments
    PAT 1100 Mars Numbers
    PAT 1096 Consecutive Factors
  • 原文地址:https://www.cnblogs.com/young-youth/p/11665606.html
Copyright © 2011-2022 走看看