2015-10-07 8 views
0

Весной MVC ... Мне нужно перезагрузить страницу после обновления записи. Таким образом, в методе действий я возвращал строку, и в ответ я возвращаюсьHTTP Status 405 - Метод запроса «GET» не поддерживается при возврате «redirect: *. *» Весной mvc

return "redirect:/recordList"; 

Когда, но это дает исключение на странице

HTTP Status 405 - Request method 'GET' not supported 

Там не исключение идет на бревнах.

Мой метод контроллер выглядит

@RequestMapping(value= "/recordList", method = RequestMethod.POST) 
    public ModelAndView getAssetListForUser(@RequestParam("ldapId") String ldapId, 
     final HttpServletRequest request){ 

Кроме того, потому что мне нужно значение, если ldapId в методе контроллера, я связывая его в вызывающем методе, как этот

 request.setAttribute("ldapId", assetAssetEmp.getAssetEmpId()); 

Пожалуйста, помогите.

ответ

1

Похоже, что ваш метод управления /recordList поддерживает только RequestMethod.POST. , следовательно, вы получаете ошибку 405 GET Method, допустимую ошибку, так как перенаправление выдаст запрос GET.

Чтобы решить эту проблему, попробуйте дать версию GET вашего контроллера. (метод списка активов), так что, как только обновление произойдет, список активов пользователя может быть возвращен с помощью метода GET.

+0

Изменение это теперь дает HTTP Status 405 - Request метод «POST» не поддерживается, когда я называю его непосредственно от действия на представить в JSP. :( – romhail

+0

Как тогда о разрешении GET и POST? 'Method = {RequestMethod.POST, RequestMethod.GET}' –

+0

вообще удалил RequestMethod.POST. Теперь он отлично работает. – romhail

0

Аннотации @RequestMapping - это ваш способ указать, когда ваш метод будет вызываться в аннотированном контроллере. Аргументы RequestMethod.GET и RequestMethod.POST позволяют вам ответить на конкретный тип запроса HTTP.

Предоставление method = RequestMethod.POST методу управления фактически на основе метода принятия только HTTP POST запросов.

RequestMethod

Смежные вопросы