0
// my form
public class myForm {
private double[] myField;
public double[] getMyField(){
return myField;
}
public void setMyField(double[] myField){
this.myField = myField;
}
}
// my jsp
...
...
<c:set var="i" value="0"/>
<c:forEach items="${myList}" var="data">
<form:input path="myField[${$i}]"/>
<c:set var="i">${i + 1}</c:set>
</c:forEach>
...
...
スプリングレンダリング後jspはこのコードを生成します。Springフレームワークのバインドフォームの配列プロパティ
<input type="text" value="0.0" name="myField0" id="myField0"/>
<input type="text" value="0.0" name="myField1" id="myField1"/>
<input type="text" value="0.0" name="myField2" id="myField2"/>
...
...
フォーム名が無効(myField0、myField1 ..)なので、Spring cantがコントローラのフォームにバインドします。私がfirebug(myField [0]、myField [1]など)で名前を変更した場合、initBinderが動作し、コントローラ上のフォームデータを取得します。どうすればこの問題を解決できますか?
ありがとうございました。
はなぜコレクションを使うのか?なぜ彼はアレイを使用できないのですか?また、コレクションは許可されていますか? – Marco