我用jersay构建了一个servlet,在项目的最初,我所有的功能都是用POST或GET编写的。我想将方法分别更改为DELETE和PUT。
这是旧情况(效果很好):
@POST
@Path("removeCompany")
@Produces(MediaType.TEXT_PLAIN)
public Response removeCompany(@QueryParam("id") long id) {
try {
getFacaed().removeCompany(id);
} catch (SystemMalfunctionException | CompanyNotExistsException e) {
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build();
}
return Response.ok("Company successfully deleted").build();
}
我想改变这种情况:
@DELETE
@Path("removeCompany")
@Produces(MediaType.TEXT_PLAIN)
public Response removeCompany(@QueryParam("id") long id) {
try {
getFacaed().removeCompany(id);
} catch (SystemMalfunctionException | CompanyNotExistsException e) {
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build();
}
return Response.ok("Company successfully deleted").build();
}
在旧情况下,一切正常,但是当我将方法更改为DELETE时,会出现此错误:
我当然保留更改,重新启动服务器并重新启动项目。
编辑: 如果我在邮递员中将方法从 DELETE 更改为来发布其工作,尽管在代码中请注意,该方法为DELETE。
也许这将有助于理解问题。