【发布时间】:2019-01-26 14:33:54
【问题描述】:
我正在使用 spring mvc + hibernate 开发 webapp。我收到警告
WARN [org.springframework.web.servlet.PageNotFound] (default task-1) No mapping for GET /ProjectFE/deleteproducts/
这是我的控制器映射删除产品代码:
@DeleteMapping(value="/deleteproducts/{productId}")
public String deleteProduct(@PathVariable("productId")int productId) {
IProductsDAO ip = new ProductsDAOImpl();
boolean b = ip.deleteProduct(productId);
if(b)
return "success";
else
return "deleteproducts";
}
jsp视图:
<body>
<form id="update product form" action="${pageContext.request.contextPath}/deleteproducts" style="display: none;">
<div class="form-group row">
<label for="product Id" class="col-sm-2 col-form-label">Id</label>
<div class="col-sm-10">
<input type="text" name="productId" class="form-control" id="productId" placeholder="Enter the product Id you want to delete">
<button class="btn btn-default" type="submit">
<span class="glyphicon glyphicon-search"></span>
</button>
</div>
</div>
</form>
</body>
删除方法调用的DAO实现:
public boolean deleteProduct(int productId)
{
boolean b = true;
try
{
sess.beginTransaction();
Products p = (Products)sess.load(Products.class, new Integer(productId));
sess.delete(p);
sess.getTransaction().commit();
}catch(Exception ex)
{
sess.getTransaction().rollback();
b = false;
}
return b;
}
这个问题会因为/{productId} 部分而发生吗?请有人帮忙!!
谢谢。
【问题讨论】:
-
我发现了你的问题。我更新了我的答案。请检查
标签: spring hibernate spring-mvc web-applications