редирект весны не работает - PullRequest
2 голосов
/ 26 февраля 2012

Весеннее перенаправление в контроллере не работает, как return «redirect: / routing /servationSuccess», но возвращает «/servation /servationSuccess»; работает. Почему это не работает. где это пошло не так. Пожалуйста, помогите.

@RequestMapping(method = RequestMethod.POST)
public String submitForm(@ModelAttribute("reservation") Reservation reservation,
                         BindingResult result, 
                         SessionStatus status, 
                         Model model) {
    validator.validate(reservation, result);
    if(result.hasErrors()) {
        model.addAttribute("reservation",reservation);
        return "reservation/reservationForm";
    }
    reservationService.make(reservation);
    status.setComplete();
    return "redirect:reservation/reservationSuccess";
}

Ответы [ 3 ]

5 голосов
/ 26 февраля 2012

Когда вы делаете перенаправление на reservation/reservationSuccess, по определению браузер отправляет новый запрос на URL reservation/reservationSuccess вашего веб-приложения. Вы увидите полный URL-адрес в адресной строке браузера.

Если этот URL не привязан ни к какому сервлету в вашем веб-приложении, вы, очевидно, получите ошибку 404.

Вы должны понимать, что точка перенаправления не в том, чтобы отправлять представление (JSP). Смысл в том, чтобы браузер перешел на другой URL в вашем веб-приложении. Таким образом, путь, который вы указали после префикса redirect:, должен быть путем действия вашего приложения Spring MVC. Не путь зрения.

1 голос
/ 08 апреля 2013

В вашем контроллере должен быть другой метод для перехвата запроса reservation/reservationSuccess GET.

Например:

@RequestMapping(value="reservation/reservationSuccess", method = RequestMethod.GET)
public String getSuccess() {
    return "reservation/reservationForm";
}
0 голосов
/ 12 января 2016

"redirect: xxx" ищет RequestMapping для соответствия строке перенаправления xxx, однако возвращаемый "xxx" будет искать View Resolver для сопоставления этой строки со страницей JSP.В этом главное отличие.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...