2011-11-08 2 views
1

私のJSPでフォームバインディングにSpring formタグライブラリを使用しています。私のコマンドオブジェクトにはSetが含まれており、JSTL <c:forEach>を使用してそのセットを反復処理し、私のセット内の各オブジェクトに対してSpring <form:input>を作成したいと思います。私はListでこれを行う方法を見てきました:c:forEach内のSetへのSpringフォームバインディング

<form:form> 
    <c:forEach items="${itemList}" var="item" varStatus="status" > 
    <form:input path="itemList[${status.index}].name" /> 
    </c:forEach> 
</form:form> 

私の問題は、私は順不同Setを使用していますが、私はindexプロパティを使用することができると信じていないということです。 Setの内容をSpringバインド形式に追加するベストプラクティスは何ですか?私はただListに変換する必要があると思うが、私は可能な選択肢に興味がある。

+0

私の場合、リストから各ユーザのチェックされたプロパティをjspページから取得しなければならないので、フォームバッキングオブジェクトのリストを使用する必要があります。私の問題のリンクhttp://stackoverflow.com/q/11478816/1458508 – maouven

+0

上記のJSPコードはWebsphereで動作していません。 org.springframework.beans.NotReadablePropertyException:Beanクラス[com.xxx.yyy.conf.xxxx]のプロパティ 'xxxx [0]'が無効です:Beanプロパティ 'xxxx [0]'が読み込めないか、無効なゲッターメソッドがあります: getterの戻り値の型がセッターのパラメータの型と一致していますか? – Nagesh

+0

誰かがWebsphere 7アプリケーションサーバーでこれに問題がありますか? – Nagesh

答えて

2

フォームバッキングオブジェクトには、このデータがListに含まれている必要があります。反復順序が何かを意味するとは保証されていないので、セットを反復することはあまり意味がありません。もちろん、セットに対してindexという概念はありません。私はあなたがおそらく、これらの要素がページに表示されるための特定の希望の順序があると思います。

+0

それは本当に意味をなさない。ご回答有難うございます。 –

関連する問題