小编lal*_*erg的帖子

Spring Framework <form:errors />标记没有显示错误

我知道这里有很多类似的问题,但没有一个能解决我的问题.

我正在使用Spring 4.0.3和Hibernate Validator 5.1.0.当我尝试省略标记的path属性时会出现问题<form:errors/>,因此:

<form:errors path="contato.nome" />工程
<form:errors path="*" />工作
<form:errors />不起作用

我不知道为什么会这样.Spring javadocs(org.springframework.web.servlet.tags.form.ErrorsTag)说它应该像这样工作:

仅字段 - 设置字段名称(或路径)的路径
仅对象错误 - 省略路径
所有错误 - 将路径设置为*

你能帮我吗?

感兴趣的代码位于'edicao.jsp'和ContatoController.java的方法'confirmarEdicao'中.对不起,如果我的英语不好.


ContatoController.java

@Controller
@RequestMapping("/contatos")
public class ContatoController {

    @Autowired
    private ContatoService contatoService;

    @Autowired 
    private MessageSource messageSource;

    @RequestMapping(value = "/confirmarEdicao", method = RequestMethod.POST)
    public String confirmarEdicao(@Valid Contato contato, BindingResult bindingResult) {

        if(bindingResult.hasErrors()) {
            return "contatos/edicao";
        }

        contatoService.save(contato);
        return "redirect:/contatos";
    }

    @RequestMapping(method = RequestMethod.GET)
    public ModelAndView form(HttpServletRequest request) {
        String …
Run Code Online (Sandbox Code Playgroud)

validation spring-mvc hibernate-validator spring-form

4
推荐指数
1
解决办法
2万
查看次数