gpt4 book ai didi

SpringMVC : Could not instantiate property type [java. lang.Double]自动增长嵌套属性路径

转载 作者:行者123 更新时间:2023-12-05 07:44:55 70 4
gpt4 key购买 nike

我们有一个映射到

的输入字段
MyObject
|--List<Double> tuition;

在绑定(bind)列表的 JSP 字段特定索引元素时,例如

path="myobject.tuition[0]"
path="myobject.tuition[1]"

我们得到这个错误:

Could not instantiate property type [java.lang.Double] to auto-grow nested property path: java.lang.InstantiationException: java.lang.Double

但我认为所有列表在 SpringMVC 中都是可自动增长的?有人可以澄清一下吗?

更新 Java Double 类没有无参数构造函数,这就是它失败的原因。非常惊讶这不是一个更广为人知或讨论的问题。如何绑定(bind)到不支持默认无参数构造函数的类列表,如 Double 或 Integer?我们现在唯一的解决方案是绑定(bind)到 List<String> (字符串支持无参数构造)然后复制到一个List<Double> ,这很奇怪。

最佳答案

如果你可以稍微改变你的模型,你可以将 tuition 包装到 Tuition 类中:

public class Tuition {
private Double value;
/* getters, setters */
}

然后修改MyObject为:

public class MyObject {
/* ... */
private List<Tuition> tuitions;
/* ... */
}

对 JSP 的更改:

path="tuitions[0].value"
path="tuitions[1].value"

关于SpringMVC : Could not instantiate property type [java. lang.Double]自动增长嵌套属性路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42394921/

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