入力フィールドからすべてのテキストフィールドとラジオボタンをArrayListとして送信してコントローラーに解析したいが、実際の方法は分からない。入力フィールドを@RequestMapping経由でコントローラーへの配列リストとして解析する
本当にありがとうございます。ここで
は、私がこれまで試したものです:@RequestMapping(value = "/formdata", method = RequestMethod.POST)
public String formdata(HttpServletRequest req, @AuthenticationPrincipal User currentUser, @ModelAttribute RegDatas regDatas, Model model) {
//get values as regDatas[0]?
}
は、ここに私のHTMLフォームです:
<form method="post" th:action="@{/formdata}" th:object="${regDatas}">
<div class="col-sm-4">
<input th:field="*{regDatas[0].gender}" type="radio" value="MALE" name="gender" disabled="disabled" /><span>Mr</span>
<input th:field="*{regDatas[0].gender}" type="radio" value="FEMALE" name="gender" disabled="disabled"/><span>Frau</span>
<p>Firstname:</p><input required="required" type="text" th:field="*{regDatas[0].firstname}" placeholder="Max" disabled="disabled" />
</div>
<div class="col-sm-4">
<input th:field="*{regDatas[1].gender}" type="radio" value="MALE" name="gender" disabled="disabled" /><span>Mr</span>
<input th:field="*{regDatas[1].gender}" type="radio" value="FEMALE" name="gender" disabled="disabled"/><span>Frau</span>
<p>Firstname:</p><input required="required" type="text" th:field="*{regDatas[1].firstname}" placeholder="Max" disabled="disabled" />
<button type="submit">Speichern</button>
</div>
</form>
私のラッパークラス:
:値を格納するためのpublic class RegDatas {
private List<RegData> regDatas;
public List<RegData> getRegDatas() {
return regDatas;
}
public void setRegDatas(List<RegData> regDatas) {
this.regDatas = regDatas;
}
}
私のクラス
public class RegData {
private String email;
private String firstname;
private Gender gender;
public String getEmail() {return email;}
public void setEmail(String email) {this.email = email;}
public String getFirstname() {return firstname;}
public void setFirstname(String firstname) {this.firstname = firstname;}
public Gender getGender(){ return gender; }
public void setGender(Gender gender){ this.gender = gender; }
}
これは私がこのようにそれを実行する場合、私は見誤りである:
org.springframework.beans.NotReadablePropertyException: Invalid property 'RegDatas[0]' of bean class [de.ciss.aag.model.domain.RegData]: Bean property 'RegDatas[0]' is not readable or has an invalid getter method
これは正常に動作するように見えます。あなたはどんな問題を抱えていますか? POSTを実行するときに、 'regDatas'変数はあなたのコントローラに何を含んでいますか? – DaveyDaveDave
このエラーが発生しました。org.springframework.beans.NotReadablePropertyException:Beanクラス[de.ciss.aag.model.domain.RegData]のプロパティ 'RegDatas [0]'が無効です:Beanプロパティ 'RegDatas [0]'が読み込めません。無効なゲッターメソッドを持っています – pepote
いつエラーが表示されますか?フォームを送信するとき、または最初にページを読み込むときですか?モデルクラスを作成しているものはありますか?あなたの 'RegDatas.regDatas'リストには、ページがロードされるときに何かありますか? – DaveyDaveDave