Я использую Spring 4.0.3.Spring mvc RedirectAttributes thews exception. Как исправить?
Мой контроллер следующим образом: -
@RequestMapping(value="/delete/{id}", method=RequestMethod.GET)
public ModelAndView deleteUser(@PathVariable Integer id,
final RedirectAttributes redirectAttributes) throws ShopNotFound {
ModelAndView mav = new ModelAndView("userIndex");
userDao.delete(id);;
String message = "The user was successfully deleted.";
return mav;
}
Если я изменить код следующим образом, то он работает, как ожидалось: -
@RequestMapping(value="/delete/{id}", method=RequestMethod.GET)
public ModelAndView deleteUser(@PathVariable Integer id) throws ShopNotFound {
ModelAndView mav = new ModelAndView("userIndex");
userDao.delete(id);;
String message = "The user was successfully deleted.";
return mav;
}
Так что все мой код хорошо, за исключением RedirectAttributes. Я прочитал об этом и нашел код тоже. Но все же я не мог заставить его работать в своем тестовом коде. Просьба сообщить мне, что не так.
Excepiton: -
HTTP Status 500 - обработка запроса не удалось; Вложенное исключение - org.springframework.web.bind.annotation.support.HandlerMethodInvocationException: не удалось вызвать метод обработчика [public org.springframework.web.servlet.ModelAndView com.fnx.reg.controller.UserController.deleteUser (java.lang.Integer , org.springframework.web.servlet.mvc.support.RedirectAttributes) throws com.fnx.reg.exception.ShopNotFound]; Вложенное исключение - это java.lang.IllegalStateException: Аргумент [RedirectAttributes] имеет тип Model или Map, но не может быть назначен из реальной модели. Возможно, вам придется переключать новые классы инфраструктуры MVC для использования этого аргумента.
использовать redirectAttributes.addFlashAttribute ("SuccessMessage", "User Deleted Successfully."); Надеюсь, это поможет u :) –