问题描述
您需要在web.xml中配置HiddenHttpMethodFilter
详细信息可以在这里找到:
解决方法
根据此处的Spring文档:
虽然HTTP定义了这四种方法,但HTML仅支持两种:GET和POST。幸运的是,有两种可能的解决方法:您可以使用JavaScript进行PUT或DELETE操作,或者仅使用“
real”方法作为附加参数进行POST(在HTML表单中建模为隐藏的输入字段)。
他们已经完成了后者,并且可以通过下面的spring MVC form标签来实现:
<form:form method="delete">
<input type="submit" value="Delete"/>
</form:form>
问题是,当我单击“删除”时,页面会引发以下错误:
HTTP Status 405 - Request method 'POST' not supported
我将调试级别更改为org.springframework.web
要调试,并发现以下消息:
DEBUG AnnotationMethodHandlerExceptionResolver - Resolving exception from handler [foo.bar.MessageForm@da9246]:
org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported
我将RestClient与DELETE方法一起使用,并且该方法按预期方式被调用。我在这里做错了什么?