Spring 3.0 HEAD Запросы

недавно мы перешли на Spring 3.0 Controller для обработки вот так:

@Controller
public class MyController {
   @RequestMapping(method = RequestMethod.POST)
   protected String onSubmit ( Form form, Errors errors) {
        // handle POST
   }

   @RequestMapping(method = RequestMethod.GET)
   protected void getForm ( Form form ) {
     // handle GET
   }
}

Теперь мы получаем много исключений в наших журналах из-за запросов HEAD.

org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'HEAD' not supported
    at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter$ServletHandlerMethodResolver.resolveHandlerMethod(AnnotationMethodHandlerAdapter.java:621)
    at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:422)
    at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:415)
    ...

Я хотел бы поддерживать HEAD Requests так же, как GET Requests, но, конечно, подчиняясь HTTP-ссылке:

Метод HEAD идентичен GET за исключением того, что сервер НЕ ДОЛЖЕН
вернуть тело сообщения в ответе. Метаинформация, содержащаяся в заголовках HTTP в ответ на запрос HEAD, ДОЛЖНА быть идентична информации, отправленной в ответ на запрос GET. Этот метод может использоваться для получения метаинформации о сущности, подразумеваемой запросом, без передачи самого тела сущности. Этот метод часто используется для проверки гипертекстовых ссылок на валидность, доступность и последние изменения.http://www.ietf.org/rfc/rfc2616.txt

У кого-нибудь есть элегантное решение или есть даже пружинное решение из коробки?

Я искал в Интернете, но не нашел ответов на это.

 Spring Monkey27 сент. 2010 г., 19:19
PycURL делает метод request = head для выполнения get. Обычно я обнаружил, что это очень нормально для многих поисковых систем, таких как: oneriot.com, ask.com и т. Д.
 Janning28 сент. 2010 г., 09:23
кого волнует, какой инструмент делает запрос HEAD. Это действительный HTTP-запрос, и многие браузеры на самом деле делают это (проверяют закладки или что-то еще)
 pavan kumar25 июл. 2017 г., 09:40
В соответствии с нижеприведенной ссылкой, пружина должна предоставлять неявные HEAD и OPTIONS, если они не присутствуют для данного URL-адреса запроса. Верно ли это с весны 4? или что-то еще мне не хватает?Spring Docs MVC это ссылка.
 AngerClown27 сент. 2010 г., 16:19
Что делает запросы HEAD? Может ли это быть неправильной конфигурацией на клиентском или клиентском коде (Javascript)? Я спрашиваю, потому что обычно HEAD предназначен для проверки обновлений страницы (то есть заголовков Cache-Control / LastModified), чтобы браузер мог обновлять данные.

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

Я считаю, что это то, что вы ищете:http://www.axelfontaine.com/2009/09/transparently-supporting-http-head.html

 David Balažic11 февр. 2015 г., 19:34
Через 5 лет есть ли более элегантное решение? Как меньше строк добавить?
 PhoneixS20 апр. 2016 г., 16:49
Пожалуйста, добавьте больше информации, а не только ссылку.

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