当我验证我的表单时,我有一个奇怪的行为。
一旦我添加 Hibernate @Valid 注释,如果发布的数据无效,Tomcat 就会将我的请求视为“错误”。如果数据有效,就不用担心。
I use:
- 雄猫7.0.52
- Javax 验证 API 1.1.0.Final
- Hibernate 验证器 5.1.0.Final
- 春季 4.0.3.RELEASE
目前,我做了一个非常简单的验证:
public class RemoveCacheElementForm {
@NotBlank(message = "Please select a cache name.")
private String name;
@NotBlank(message = "Please select a cache entry key.")
private String key;
弹簧控制器:
/**
* Handler to remove one cached elements from the specified cache.
*
* @return the view.
*/
@RequestMapping(value = CACHE_REMOVE, method = RequestMethod.POST)
public String removeCachedElement(ModelMap model, @Valid @ModelAttribute(FORM_NAME) RemoveCacheElementForm form) {
model.addAttribute("removeElementResult", CacheUtils.removeCachedElement(form.getName(), form.getKey()));
initializeModel(model);
return CACHE_ADMIN_PAGE;
}
当我删除@Valid注释时,也不用担心。
有人有主意吗?
非常感谢你的帮助! :-)
尝试将您的代码更改为
@RequestMapping(value = CACHE_REMOVE, method = RequestMethod.POST)
public String removeCachedElement(ModelMap model, @Valid @ModelAttribute(FORM_NAME) RemoveCacheElementForm form, BindingResult bindingResult) {
model.addAttribute("removeElementResult", CacheUtils.removeCachedElement(form.getName(), form.getKey()));
initializeModel(model);
return CACHE_ADMIN_PAGE;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)