springmvc 使用validation校验无法加载properties文件,及验证信息乱码的问题
来源:互联网 发布:易约软件 编辑:程序博客网 时间:2024/06/05 10:09
今天在使用JSR-303 validation进行校验时出现了标题中的相关问题
po类相关代码:
@Size(min=1,max=30,message="{items.name.length.error}") private String name; @NotNull(message="{items.createtime.isNUll}") private Date createtime;
springmvc.xml:
<mvc:annotation-driven validator="validator"></mvc:annotation-driven><!-- 校验器 --><bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"><property name="providerClass" value="org.hibernate.validator.HibernateValidator" /><property name="validationMessageSource" ref="messageSource" /></bean><bean id="messageSource" class="org.springframework.context.support.ReloadableResourceBundleMessageSource"><property name="basenames"><list><value>classpath:CustomValidationMessages</value></list></property><property name="fileEncodings" value="utf-8" /><property name="cacheSeconds" value="120" /></bean>
controller.java:
@RequestMapping("/editItemsSubmit")public String editItemsSubmit(Model model, HttpServletRequest request, Integer id, @Validated ItemsCustom itemsCustom, BindingResult bindingResult) throws Exception {if (bindingResult.hasErrors()) {List<ObjectError> allErrors = bindingResult.getAllErrors();for (ObjectError objectError : allErrors) {System.out.println(objectError.getDefaultMessage());}model.addAttribute("allErrors", allErrors);model.addAttribute("items", itemsCustom);return "items/editItems";}
CustomValidationMessage.properties:
items.name.length.error=请输入1到30个字符的商品名称items.createtime.isNULL=请输入商品的生产日期
第一个问题很明显是properties文件中的信息未正确加载导致的。经检查发现po类中非空校验的代号为items.createtime.isNUll,properties文件中为items.createtime.isNULL,二者不匹配导致了错误。
另附springmvc加载配置properties文件的几种方式以供学习http://blog.csdn.net/chinadim/article/details/40621671
第二个问题是由于编码问题导致的
经查询将springmvc.xml文件中的
<property name="fileEncodings" value="utf-8" />更改为:
<property name="defaultEncoding" value="utf-8" />
或者利用jdk根目录bin文件夹下的native2ascii.exe文件将properties文件转为UTF-8也可解决。
阅读全文
0 0
- springmvc 使用validation校验无法加载properties文件,及验证信息乱码的问题
- springmvc使用Hibernate的校验框架validation
- 使用SpringMVC数据验证框架validation做数据校验
- springmvc 使用validation验证!
- springmvc使用校验框架validation校验
- springmvc的乱码问题及文件上传下载
- Validation的onfocusout出错问题及valid()无法远程验证问题
- Properties文件的乱码问题
- springmvc使用hibernate-validation校验器异常
- 解决“Spring 使用MapperScannerConfigurer无法读取*.properties文件"的问题
- SpringMVC教程--Validation校验
- SpringMVC—Validation校验
- SpringMVC使用hibrenate validation进行验证
- mac 下的properties文件乱码问题
- Properties文件的加载及读写
- SpringMVC结合Validation api 和Hibernate validation进行校验不提示验证错误信息
- SpringMVC中Controller使用Validation的参数校验和统一处理参数异常
- SpringMVC加载配置Properties文件的几种方式
- Android创建窗口(一)创建应用窗口
- DataTable的一些总结
- MarkDown编辑器是什么
- Java基础加强总结(一)——注解(Annotation)
- java算法学习笔记--栈结构篇
- springmvc 使用validation校验无法加载properties文件,及验证信息乱码的问题
- Unity3D学习记录——日深日落
- 堆
- shell语法的简单学习以及编写一个简单的进度条
- iOS开发 HTTP协议详解
- 工作中遇到的各种问题
- Qt中的各种控件简介
- CSS3 --- 选择器
- 工作笔记(二)