Estou anexando minha classe Controller, porém não estou conseguindo entender o motivo desse método form() não está funcionando. Quando tento utilizar ele aparece como não encontrado.
package org.hermivaldo.controller;
import java.util.List;
import javax.validation.Valid;
import org.hermivaldo.daos.ProdutoDAO;
import org.hermivaldo.entidades.Produto;
import org.hermivaldo.entidades.TipoPreco;
import org.hermivaldo.validation.ProdutoValidation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
@Controller
@RequestMapping("produto")
public class ProdutoController {
@Autowired
ProdutoDAO dao;
@InitBinder
public void InitBinder(WebDataBinder binder) {
binder.addValidators(new ProdutoValidation());
}
@RequestMapping(value="cadastrar", method=RequestMethod.GET)
public ModelAndView cadastrar() {
System.out.println("Entrando no método de cadastrar produto");
ModelAndView view = new ModelAndView("produto/cadastro");
view.addObject("tipos", TipoPreco.values());
return view;
}
@RequestMapping(method=RequestMethod.POST)
public ModelAndView salvar(@Valid Produto produto, BindingResult result,RedirectAttributes redirectAttributes) {
if (result.hasErrors()) {
return form();
}
dao.salvar(produto);
redirectAttributes.addFlashAttribute("msg", "Produto cadastrado com sucesso");
return new ModelAndView("redirect:produto");
}
@RequestMapping(method=RequestMethod.GET)
public ModelAndView listagem() {
List<Produto> livros = dao.getListaLivros();
ModelAndView view = new ModelAndView("produto/listagem");
view.addObject("livros", livros);
return view;
}
}