Estoy muy confundido usando Spring web MVC para "redirigir".
Quiero redirigir a una URL, pero la barra de direcciones en brwser no está actualizada.
Primero, publico un formulario en un controlador y en este controlador uso el prefijo "redirect:" a un nuevo controlador (funciona), pero la barra de direcciones todavía hace referencia a la URL anterior.
Aquí está mi código para que el controlador reciba la solicitud de publicación:
@RequestMapping(method=RequestMethod.POST)
public ModelAndView processSubmit(LoginFormBean formBean, BindingResult result,
Model model) {
System.out.println(formBean.getUsername());
System.out.println(formBean.getPassword());
return new ModelAndView("redirect:/index");
}
Para que el controlador redirija:
@Controller
@RequestMapping("/index")
public class IndexController {
@RequestMapping(method=RequestMethod.GET)
public String show() {
return "index";
}
}
Antes de publicar el formulario, el formulario, URL es "http: // localhost: 7001 / mobi" después de publicar y redirigir, la URL no es "http: // localhost: 7001 / mobi / index", pero sigue siendo "http: // localhost: 7001 / mobi"
¿Hay algún error visible en mi código que deba corregirse? ¿Puede la comunidad ayudarme a implementar esto correctamente?
Respuestas
0 para la respuesta № 1La única respuesta visible que puedo suponer basada ensu código es dudoso que tenga una vista modelandview que "redirija al índice. Puede deshacerse de la sintaxis modelandview con Spring 3, y simplemente devolver las páginas que desee directamente. Aquí hay un ejemplo de mi propio código, donde También reciba un formulario publicado y redirija a otro controlador:
@RequestMapping(value = REQUEST_MAP, method = RequestMethod.POST)
public String processForm(HttpServletRequest req, HttpServletResponse res, @ModelAttribute("myForm") myForm form, BindingResult result)
throws Exception {
//super cool form handling logic here!
return "redirect:/anotherControllerMappedURI";
}
También podría haber devuelto una cadena para devolver una página de vista directamente. Como, devuelva "index" para enviar al usuario a una página index.jsp. Entonces podría usar una metaetiqueta para hacer una redirección html si es necesario.