我一直在使用Java servlet和jquery从事电影项目,到目前为止一直做得很好。昨天,一切正常,但今天我无法对Servlet运行一个重要的发布请求,可以触发它,但无法读取返回数据的值...这是发布请求
getProjection : function(ID) {
params = {
'action': 'getProjection',
'id': ID
};
$.post('ProjectionsServlet', params, function(data) {
console.log(data); //this is empty
});
}
这是我的Servlet处理请求
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String action = request.getParameter("action");
try {
switch(action) {
case "add": {
break;
}
case "getProjection": {
Integer id = Integer.parseInt(request.getParameter("id"));
Projection projection = ProjectionDAO.get(id);
Map<String, Object> data = new HashMap<>();
data.put("projection", projection);
ObjectMapper mapper = new ObjectMapper();
String jsonDataProjection = mapper.writeValueAsString(data);
//I printed jsonDataProjection here and it returns the object
response.setContentType("application/json");
response.getWriter().write(jsonDataProjection);
}
}
}catch (Exception ex) {
ex.printStackTrace();
}
}
我对实体电影的调用完全相同,但效果很好,实际上项目中的所有内容都可以正常运行,只需要一个调用即可。我敢肯定这是一个明显的错误,但我似乎找不到。
我通过在get方法中将其移至新的servlet来解决此问题,但仍然不知道为什么它不起作用