Jquery发布请求返回空数据

问题描述 投票:0回答:1

我一直在使用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();
        }
    }

我对实体电影的调用完全相同,但效果很好,实际上项目中的所有内容都可以正常运行,只需要一个调用即可。我敢肯定这是一个明显的错误,但我似乎找不到。

jquery ajax servlets
1个回答
0
投票

我通过在get方法中将其移至新的servlet来解决此问题,但仍然不知道为什么它不起作用

© www.soinside.com 2019 - 2024. All rights reserved.