6

jspでSpring入力パスを使用しています

元:

<div class="cell label"> 
    <form:label path="order.paymentTransactions.payerEmail">Payer Mail</form:label>
</div> 
<div class="cell"> 
    <form:input path="order.paymentTransactions.payerEmail" name="payerEmail"/>
</div> 

ここでは、注文が私の主なオブジェクトであり、注文内で、支払いトランザクションはリストです。payerEmail で dao を介してチェックするデータを入力する必要があります。

しかし、私にはエラーと無効なパスが表示されます。jspで入力パスを定義する良い方法を教えてください。ありがとう

4

3 に答える 3

14

Spring で Bean のリストをマッピングする際に、パス属性を提供するのは困難です。<form:input>をプレーンな htmlに置き換えることができます<input>

<input name="order.paymentTransactions[0].payerEmail" />

Spring MVC で List をフォーム オブジェクトとしてマップする完全な例を次に示します。

例: Spring MVC: List of Beans を使用した複数行フォームの送信

上記の例では<form:input>、リストの操作中に使用するのが難しい理由についても説明しています。以下のようなものを使用しようとすると、次のようになります。

<form:input path="order.paymentTransactions[0].payerEmail" name="payerEmail"/>

Spring はこれを HTML として単純にレンダリングします。

<input name="order.paymentTransactions0.payerEmail" />

括弧 [ ] は無視します。

したがって、<form:input>リストのマッピングには使用できません。

于 2012-12-12T14:06:13.937 に答える