Boa tarde,
Eu gostaria de saber como utilizar o PathVariable com formulários, como eu faço para enviar o valor do formulario para a PathVariable.
Abaixo tem meu formulário e o controller, está tudo funcionando, mas sem o PathVariable
Formulário
<form action="transactions/info" method="GET">
<label for="name">Nome: </label>
<input type="text" name="name" >
<input type="submit" value="Buscar pelo Nome"/>
</form>
Controller
@RequestMapping("/info")
public ModelAndView infoTest(@RequestParam("name") String name){
System.out.println(name);
ModelAndView modelAndView = new ModelAndView("transactions/info");
Transaction transaction = traDAO.findByName(name);
modelAndView.addObject("tra", transaction);
return modelAndView;
}
Antes eu tinha um outro metódo mapeado como:
@RequestMapping(value="/info2/{name}", method = RequestMethod.POST)
Porém só funcionava quando inseria a url manualmente, através do form não funcionava, por isso eu troquei o PathVariable por RequestParameter
Eu já tentei fazer de algumas maneiras, porém minha url acabava ficando: /EstudosSpring-1.0/WEB-INF/views/transactions/info2/001.jsp
Tentei tirar o setPrefix(".jsp") do metódo InternalResourceViewResolver(no AppWebConfiguration) e a url ficou certa, porém não funcionava.
09:44:02,802 WARN [org.springframework.web.servlet.PageNotFound] (default task-43) No mapping found for HTTP request with URI [/EstudosSpring-1.0/WEB-INF/views/transactions/info2/001] in DispatcherServlet with name 'dispatcher'