我有一个Spring MVC的Web应用程序。 在其与的应该删除其他资源的资源的按钮形式:
<td>
<form action="/product-bases/${productBase.id}/positions/${position.id}" method="DELETE">
<input type="submit" value="delete" />
</form>
</td>
我的控制器:
@Controller
@RequestMapping(value = "/product-bases/{id}/positions")
public class ProductBasePositionController {
@RequestMapping(value = "/{positionId}", method = RequestMethod.DELETE)
public ModelAndView delete(@PathVariable Integer productBaseId, @PathVariable Integer positionId) {
所以理论上,服务器应该给控制器的路线。 但可惜没有,所以职务;)
我越来越
HTTP Status 405 - Request method 'GET' not supported
type Status report
message Request method 'GET' not supported
description The specified HTTP method is not allowed for the requested resource (Request method 'GET' not supported).
Apache Tomcat/7.0.19
很显然,我没有为尚未定义/位置/ ID的获取,但我为什么要,我想要做的现在删除..
(我也想从我的春天 - 测试 - MVC框架在模拟的servlet没有之间的任何执行Tomcat的运行这一点,它给了我一个400 - 错误的请求。)
那我在这里失踪?
哦,只是为了节省一些弯道:post和get将其他资源工作,所以我设置的其余部分都很好。
在启动服务器甚至告诉我:
RequestMappingHandlerMapping [INFO] Mapped "{[/product-bases/{id}/positions/{positionId}],methods=[DELETE],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView our.view.controller.ProductBasePositionController.delete(java.lang.Integer,java.lang.Integer)
任何人都一样困惑,因为我? 如果没有那么,请赐教!