提交一颗树,三级区域个数大于1000个导致提交失败!!!

org.springframework.beans.InvalidPropertyException: Invalid property 'divisionList[1000]' of bean class [com.gome.bean.Presell]: Index of out of bounds in property path 'divisionList[1000]'; nested exception is java.lang.IndexOutOfBoundsException: Index: 1000, Size: 1000
org.springframework.beans.BeanWrapperImpl.getPropertyValue(BeanWrapperImpl.java:811)
org.springframework.beans.BeanWrapperImpl.getNestedBeanWrapper(BeanWrapperImpl.java:554)

溯源了下Spring的代码,找到了DataBinder,先解释下DataBinder类的作用,见链接 
http://docs.spring.io/spring/docs/1.2.x/api/org/springframework/validation/DataBinder.html 
其中有一句

INFO: More than the maximum number of request parameters (GET plus POST) for a single request ([10,000]) were detected. Any parameters beyond this limit have been ignored. To change this limit, set the maxParameterCount attribute on the Connector.
Note: further occurrences of this error will be logged at DEBUG level.

解决如下:重set下autoGrowCollectionLimit,当做绑定的时候set为3000或者更大 
在Controller重写这个方法

/**
* 由于Spring在接受前台传入的List时,就会出现256的IndexOutOfBoundsException异常
* 设置setAutoGrowCollectionLimit为1024
* @param binder
* @see [类、类#方法、类#成员]
*/
@InitBinder
public void initListBinder(WebDataBinder binder)
{
// 设置需要包裹的元素个数,默认为256
binder.setAutoGrowCollectionLimit(3000);
}
 

或者不用表单提交

先转换成json字符串到后台 然后用jsonarray反序列和成集合对象也是可以的

原贴  https://blog.csdn.net/zgliang88/article/details/52780213

springmvc封装list个数限制问题的更多相关文章

  1. SpringMVC封装表单数据

    1.domain类 package com.xiaostudy.domain; public class User { private int id; private String username; ...

  2. springmvc对象映射个数超过256个

    /** 由于Spring在接受前台传入的List时,就会出现256的IndexOutOfBoundsException异常 设置setAutoGrowCollectionLimit为1024 @par ...

  3. SpringMVC 封装返回结果对象

    /*** *请求返回的最外层对象 **/ public class Result<T>{ /*错误码*/ private Integer code; /*提示信息*/ private St ...

  4. springmvc 结合 自动封装异常信息输出为json 报错 500内部服务器错误的原因

    补充:还有一个原因是因为spring的对象没有被成功注入,例如 mapper没有被成功注入,抛出异常时在这种封装场景下将会抛出 500 服务器内部错误, 这种情况下要排查还是靠debug然后看看到底是 ...

  5. SpringMVC文件上传下载(单文件、多文件)

    前言 大家好,我是bigsai,今天我们学习Springmvc的文件上传下载. 文件上传和下载是互联网web应用非常重要的组成部分,它是信息交互传输的重要渠道之一.你可能经常在网页上传下载文件,你可能 ...

  6. 【转载】SpringMVC学习笔记

    转载于:SpringMVC笔记 SpringMVC 1.SpringMVC概述 MVC: Model(模型): 数据模型,提供要展示的数据,:Value Object(数据Dao) 和 服务层(行为S ...

  7. springMvc请求的跳转和传值

    forword跳转页面的三种方式: 1.使用serlvet /** * 使用forward跳转,传递基本类型参数到页面 * 注意: * 1.使用servlet原生API Request作用域 * */ ...

  8. springmvcの神总结のreadme

    ********李守宏springmvc******** 3.== --\springmvc一个controller实现多个方法 ----\继承MultiActionController ----\配 ...

  9. springmvc+swagger构建Restful风格文档

    本次和大家分享的是java方面的springmvc来构建的webapi接口+swagger文档:上篇文章分享.net的webapi用swagger来构建文档,因为有朋友问了为啥.net有docpage ...

随机推荐

  1. php post get 繁体、日文、韩文时 自动添加 反斜杠 问题

    做些二次开发项目,数据库.文件编码没法大规模的修改,比如二次开发一个日文系统,编码是JA16SJIS,$_POST或$_GET的信息中如果“申請”,得到的信息就会变成“申\請”,多出一个反斜杠! 先贴 ...

  2. python(unittest)报告导出(一):使用HTMLTestRunner导出

    (前提:HTMLTestRunner.py放在python安装目录的Lib文件夹下) 一般将HTMLTestRunner.py文件放入需要引用的目录下,但这个太过于局限,仅对当前项目有用,所以可以将H ...

  3. Emma姐

  4. 20190430-PPK大佬的三个Viewport

    写在前面的乱七八糟:在知识的海洋里狗刨,越刨会越自我膨胀,膨胀过后的自己,又会发现自己的渺小~ 目录 1.viewport 2.css的1px 3.三个viewport 参考文献: https://b ...

  5. Html checkbox全选

    html中全选 <table class="data-table td-center"> <tr> <td><input type=&qu ...

  6. 2019年UX设计新趋势

    UX设计总是在不断变化中.最近短短两年的时间里,我们已经看到,很多地方都大规模采用颠覆性技术,比如语音用户界面,混合现实和智能家居设备.设计这些体验的实际过程可能保持不变,但新技术的出现引发了新的行为 ...

  7. (转)tune2fs命令详解

    tune2fs命令详解(原创) 原文:http://czmmiao.iteye.com/blog/1749232 tune2fs简介 tune2fs是调整和查看ext2/ext3文件系统的文件系统参数 ...

  8. UI设计黄金法则

    1. 网页用户界面(WUI - web user interface) 最佳设计经验与准则 以主页为基准,建立标准的层级结构 保持布局的一致性 将大版本的内容或过于复杂的任务分解为多个页面显示 将导航 ...

  9. Mongodb利用aggregation实现抽样查询(按记录数和时间)

    之前对mongodb不熟,但是项目要用,因为数据量比较大,并且领导要实现抽样查询,控制数据流量,所以自己研究了下,亲测可用,分享一下! 话不多说,上代码: 第一种方案:加自增主键,实现按记录数抽样 1 ...

  10. WEB下渗透测试经验技巧(全)[转载]

    Nuclear’Atk 整理的: 上传漏洞拿shell: 1.直接上传asp.asa.jsp.cer.php.aspx.htr.cdx….之类的马,拿到shell.2.就是在上传时在后缀后面加空格或者 ...