title: Spring Boot 2.2.0.RELEASE not mapping thymeleaf put and delete requests
body: <p>After upgrading from Spring Boot 2.1.6.RELEASE to 2.2.0.RELEASE my Thymeleaf based pages are failing when performing puts and deletes on embedded Tomcat. Gets and posts work fine.</p>
  <p>I see in Chrome developer tools that the following request is being sent:</p>
  <p>Request URL: https://localhost:8443/notifications/1
  Request Method: POST</p>
  <p>The request body contains both _method=&quot;put&quot; and the _csrf token.</p>
  <p>Interestingly my integration tests, annotated with @SpringBootTest, are passing.</p>
  <p>Spring Boot Actuator shows /notifications/{notificationId} is mapped to PUT.</p>
  <p>Switching back to 2.1.6.RELEASE solves the problem.</p>
  <p>My Thymeleaf form is defined as follows:</p>
  <pre><code>&lt;form id=&quot;notificationForm&quot; th:action=&quot;@{/notifications/{notificationId}(notificationId=${notification.id})}&quot; th:object=&quot;${notification}&quot; th:method=&quot;put&quot; class=&quot;needs-validation&quot; novalidate autocomplete=&quot;off&quot;&gt;
  </code></pre>
  <p>My controller method is annotated as follows:</p>
  <pre><code>  @PutMapping(&quot;/notifications/{notificationId}&quot;)
    public String updateNotification(@PathVariable(&quot;notificationId&quot;) final Long notificationId,
        @Valid @ModelAttribute(name = NOTIFICATION_MODEL_ATTRIBUTE) final NotificationDto notificationDto,
        final BindingResult result, final Model model, final RedirectAttributes attributes) 
  </code></pre>
  <p>When I perform the delete the following stack trace is presented in the console:</p>
  <pre><code>org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported
      at org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.handleNoMatch(RequestMappingInfoHandlerMapping.java:201)
      at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:421)
      at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:367)
      at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.getHandlerInternal(RequestMappingHandlerMapping.java:449)
      at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.getHandlerInternal(RequestMappingHandlerMapping.java:67)
      at org.springframework.web.servlet.handler.AbstractHandlerMapping.getHandler(AbstractHandlerMapping.java:393)
      at org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1234)
      at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1016)
      at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
      at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
      at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:660)
      at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
  ...
  </code></pre>
  <p>It's as though Spring is not performing the necessary method conversion using _method before resolving the mapping.</p>
  <p>Does anyone have any ideas?</p>