嗨,我有一些Ajax Forms,在这里我使用Async POST将数据发送到服务器.
如果BindingResult有一个错误,我希望在视图中显示一条消息,在输入字段之后解释错误,因此这是我的控制器中的方法:
@RequestMapping(method = RequestMethod.POST)
@ResponseBody
public Map<String, String> create(@Valid MyClass myClass, BindingResult bindingResult, Model uiModel,
HttpServletRequest httpServletRequest, HttpServletResponse response, Locale locale) {
if (bindingResult.hasErrors()) {
response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
Map<String, String> errorFields = new HashMap<String, String>();
for(FieldError fieldError : bindingResult.getFieldErrors()){
errorFields.put(fieldError.getField(), fieldError.getDefaultMessage());
}
return errorFields;
}
uiModel.asMap().clear();
myService.create(personale);
return null;
}但是fieldError.getDefaultMessage()返回一个英语消息,但是我想返回一个本地化的消息。
我知道我可以这样做:
@NotNull(message="{myMessage}")
private Field field;但是我不会为每个字段指定本地化的消息,也许我可以使用message.properties文件吗?
有可能吗??
谢谢!
编辑
我读了这个:another question about my problem,但我无法从信息中得到.
发布于 2016-04-30 11:56:57
我也面临着同样的问题,我可以这样解决:
https://stackoverflow.com/questions/25748385
复制相似问题