gpt4 book ai didi

java - Spring AutoPopulatingList 最大尺寸?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:29:54 24 4
gpt4 key购买 nike

我对 Spring AutoPopulatingList 有疑问。我的用例如下:管理可以访问应用程序的用户列表。

在 GUI 端,我使用自动完成字段来搜索并将用户添加到右侧的表格中。也可以从表中删除用户。当 GUI 用户提交时,GUI 会动态构建一个包含用户字段的表单:selectedUsers[1], ..., selectedUsers[N]。

我的问题是我的“支持”bean 中的 AutoPopulatingList 似乎只增长到 256 个项目,然后就停止了。所以我得到以下错误:

[myapp.web.controller.admin.form.ApplicationForm]:属性路径“selectedUsers[256]”中的列表索引无效;嵌套异常是 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256

你知道有没有实际限制?如果是,有没有办法提高它?如果没有,您能想出解决此问题的方法吗?

预先感谢您的帮助

最佳答案

好的,所以我深入了解了 Spring 的内部结构,发现默认情况下,256 是限制。

限制由 BeanWrapperImpl#autoGrowCollectionLimit 属性给出。 Spring 的 WebDataBinder 默认配置将其设置为 256。

提高这个限制的正确方法是在你的 Controller 中定义一个@InitBinder 注释方法:

@InitBinder
public void initBinder(WebDataBinder binder) {
binder.setAutoGrowCollectionLimit(1024);
}

然后一切都按预期进行。

我没有尝试找到一种方法来全局修改此限制。

HTH

关于java - Spring AutoPopulatingList 最大尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20946573/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com