很早之前的一个ajax请求今天突然不能正常显示数据了。

控制台看到报错 POST http://xxx:8081/spider-war/spiderControl.do?method=getTaskList 404 (Not Found)

没改什么呀,怎么错了。debug看list也是查询到的呀。

 1 @ResponseBody
2 @RequestMapping(params = "method=getTaskList", produces = { "text/plain;charset=UTF-8" })
3 public String getTaskList(HttpServletRequest request){
4 Map<String, Object> resultMap = new HashMap<String, Object>();
5 try {
6 SpiderTask task = new SpiderTask();
7 List<SpiderTask> list = spiderControlService.selectSpiderTaskList(task);
8 resultMap.put("tasks", list);
9 } catch (Exception e) {
10 e.printStackTrace();
11 resultMap.put("msg", 0);
12 }
13 return JSonUtil.toJSonString(resultMap);
14 }

后来问了问同事,他把把返回对象由 resultMap.put("tasks", list); 换成 resultMap.put("msg", 0);

发现可以了,正常返回说明是这个list有问题了.
这时候我突然想起list里面对象新增了个字段,一定是这问题。 private Integer prefix; 这个字段,
开始我是用int类型,可是这样的话new 对象,这个字段就默认有值了(0),所以后来改成Integer对象类型。
但是这里没改  

public int getPrefix() {
return prefix;
}

public void setPrefix(Integer prefix) {
this.prefix = prefix;
}


之后把这改成Integer就返回正常了。其中具体原因我不是特别清楚,但是我觉得应该是他调用了getPrefix导致的问题。



ajax提交请求返回对象异常问题的更多相关文章

  1. ajax异步请求返回对象

    使用ajax异步请求返回一个对象. java code: @RequestMapping({"getAstSingleWheelImg_bbs"+Constant.JSON}) @ ...

  2. jquery验证后ajax提交,返回消息怎样统一显示的问题

    /* jquery验证后ajax提交.返回消息怎样跟jquery验证体系统一显示的问题,网上查了非常多资料.都没有找到明白的答案,通过数小时的尝试,最终攻克了,现举一个简单的样例,给须要的人參考參考吧 ...

  3. flask ajax发送请求返回400

    在flaskWTF使用csrf保护后,一般提交form表单都需要一个隐藏的csrf 这样可以成功提交,但是使用ajax提交时就不能成功提交,会返回400错误,服务器无法理解请求,这样就需要新的方法解决 ...

  4. ajax提交请求为啥url要用这个函数encodeURI

    参考如下: 如果你是通过form提交的,那就不需要用这个了.但是如果是你使用url的方式例如:ajax提交到后台的,就需要对url进行encodeURI编码,否则,会导致后台出现各种乱码,不加enco ...

  5. 前后端交互技术之servlet与form表单提交请求及ajax提交请求

    1.先来个简单的form表单 login.jsp,建在webcontent目录下(url写相对路径就可以了) <!DOCTYPE html><html><head> ...

  6. 用ajax提交请求,预期Json返回 406错误的解决办法!

    正常情况下在Controller端已经配置好了 @ResponseBody    @RequestMapping  返回Json格式数据 发生406错误 ,应该检查提交的请求路径是否含有 .html ...

  7. jquery序列化form表单使用ajax提交后处理返回的json数据

    1.返回json字符串: /** 将一个字符串输出到浏览器 */ protected void writeJson(String json) { PrintWriter pw = null; try ...

  8. Ajax异步请求返回文件流(eg:导出文件时,直接将导出数据用文件流的形式返回客户端供客户下载)

    在异步请求中要返回文件流,不能使用JQuery,因为$.ajax,$.post 不支持返回二进制文件流的类型,可以看到下图,dataType只支持xml,json,script,html这几种格式,没 ...

  9. Ajax异步请求XMLHttpRequest对象Get请求

    $(function () { $("#btnGetDate").click(function () { var xhr; //第一步:创建异步请求的核心的对象: if (XMLH ...

随机推荐

  1. SQL --Chapter 04 数据更新

    数据的插入(INSERT语句的使用方法) INSERT INTO ShohinIns (shohin_id, shohin_mei, shohin_bunrui, hanbai_tanka, 原则上, ...

  2. 利用BeanUtils在对象间复制属性

    commons-beanutils是jakarta commons子项目中的一个软件包,其主要目的是利用反射机制对JavaBean的属性进行处理.我们知道,一个JavaBean通常包含了大量的属性,很 ...

  3. 创建html模板

    打开写好的html 复制  在页面上右击------属性  --会出现下面情况

  4. Base64简介

    Base64是一种用64个字符来表示任意二进制数据的方法.首先,准备一个包含64个字符的数组:['A', 'B', 'C', ... 'a', 'b', 'c', ... '0', '1', ... ...

  5. Java笔记7-多态父类静态

    多态的应用-面向父类编程 1.对象的编译时类型写成父类 2.方法的返回类型写成父类 3.方法的参数类型写成父类 编译时类型:对象的声明时类型,在于编译期间 运行时类型:new运算符后面的类型 编译时类 ...

  6. C#连接数据库SQL,并转换成list形式

    web config 配置 <connectionStrings>    <add name="SQLConnString" connectionString=& ...

  7. Linux下VI命令详细介绍

       vi 是"Visual Interface" 的简称,它在Linux 上的地位就仿佛Edit 程序在DOS上一样.它可以执行输出.删除.查找.替换.块操作等众多文本操作,而且 ...

  8. java的三大框架(二)---Struts2

    Strtu2框架 1.控制器:ActionServlet充当控制层 2.模型层:由ActionForm及业务JavaBean实现 3.视图:用户的看到并与之交互的界面   由struts标签库和jsp ...

  9. install vim

    常用命令: [0]安装vim: oee@copener:~$ sudo apt-get install vim vim-scripts vim-doc 刚安装完$HOME目录下只有两个文件:.vim/ ...

  10. 给linux 授权一个可以远程登录的账户

    创建用户:grant all on *.* to '; 授权:flush privileges;