Использование методов PUT и DELETE в Spring MVC

я пытаюсь использоватьRequestMethod.PUT а такжеRequestMethod.DELETE в Spring MVC контроллер (версия 3.0.2). Существует три метода, сопоставленных с URL-адресом в классе контроллера Spring следующим образом (PUT, GET и POST соответственно, только для демонстрационных целей).

@RequestMapping(method = {RequestMethod.PUT}, value = {"admin_side/Temp"}, headers = {"content-type=multipart/form-data"})
public String update(@ModelAttribute("tempBean") TempBean tempBean, BindingResult error, Map model, HttpServletRequest request, HttpServletResponse response) {
    if (ServletFileUpload.isMultipartContent(request)) {
        System.out.println("true");
    }

    System.out.println("Request method PUT");
    return "admin_side/Temp";
}

@RequestMapping(method = {RequestMethod.GET}, value = {"admin_side/Temp"})
public String showForm(@ModelAttribute("tempBean") TempBean tempBean, BindingResult error, Map model, HttpServletRequest request, HttpServletResponse response) {
    System.out.println("Request method GET");
    return "admin_side/Temp";
}

@RequestMapping(method = {RequestMethod.POST}, value = {"admin_side/Temp"})
public String onSubmit(@ModelAttribute("tempBean") TempBean tempBean, BindingResult error, Map model, HttpServletRequest request, HttpServletResponse response) {
    System.out.println("Request method POST");
    return "admin_side/Temp";
}

Когда страница загружена,GET метод вызывается как очевидный, но во всех других случаях (когда страница отправлена), единственный метод, который должен быть вызванPOST, метод обозначенRequestMethod.PUT никогда не вызывается.

Форма Spring содержит только кнопку отправки и браузер изображений как,



    
    

Сгенерированный HTML выглядит следующим образом:



    
    

    
    

В моем (spring-config.xmldispatcher-servlet.xml в моем случае) я добавил ссылку на:CommonsMultipartResolver


и в моемweb.xml файл,HiddenHttpMethodFilter настроен следующим образом,


    MultipartFilter
    org.springframework.web.multipart.support.MultipartFilter
    
        multipartResolverBeanName
        filterMultipartResolver
    



    MultipartFilter
    /*



    HiddenHttpMethodFilter
    org.springframework.web.filter.HiddenHttpMethodFilter



    HiddenHttpMethodFilter
    /*

PUT (а такжеDELETE тоже) метод никогда не вызывается (без исключений и ошибок). Что мне здесь не хватает?

Обновить :

Со следующей конфигурацией вweb.xml


    MultipartFilter
    org.springframework.web.multipart.support.MultipartFilter
     
        multipartResolverBeanName
        filterMultipartResolver
    



    MultipartFilter
    dispatcher  



    HiddenHttpMethodFilter
    org.springframework.web.filter.HiddenHttpMethodFilter



    HiddenHttpMethodFilter
    dispatcher 

это бросает следующее исключение.

org.springframework.beans.factory.NoSuchBeanDefinitionException: ни один компонент не назван 'filterMultipartResolver» определено

Где имяdispatcher это имя сервлета -org.springframework.web.servlet.DispatcherServlet уже отображается в web.xml следующим образом.


    dispatcher
    org.springframework.web.servlet.DispatcherServlet
    2



    dispatcher
    *.htm

Я не уверен, что еще нужно? Это фильтрHiddenHttpMethodFilter требуется реализовать самостоятельно расширениеOncePerRequestFilter что-то вроде показанногоВот? (это встроенный класс)

Важные пункты перечисленыВот.

Ответы на вопрос(2)

Ваш ответ на вопрос