私は1対多数のマッピングを持つ次の2つのクラスを持っています。生徒は複数の科目を選択できます。フォームの使い方:spring mvcの選択
@Entity
@Table (name = "studentinfo")
public class student {
@Id
@GeneratedValue (strategy = GenerationType.IDENTITY)
@Column (name = "stud_id")
private int studId;
@NotEmpty
@Column (name = "stud_name")
private String studname;
@NotEmpty
@Column (name = "stud_age")
private int studage;
@OneToMany (cascade = CascadeType.ALL)
@JoinColumn (name = "stud_sub_id")
private List<subject> subject;
//getters and setters
対象モデルクラスiの形式を使用するにはどうすればよい
@Entity
@Table (name = "subject")
public class subject {
@Id
@GeneratedValue (strategy = GenerationType.IDENTITY)
@Column (name = "Sub_id")
private int subId;
@NotEmpty
@Column (name = "Subj_name")
private String subjname;
//getters and setters
:特定の生徒の詳細を編集しながら、私も学生のために、複数の対象を選択して、できるように、サブジェクトのリストを表示するには、selectタグを、私は彼のために選択された科目を表示する必要があります。ここに私の現在のJSPコードがあります。
<form:form commandName="studentdetails" action="${pageContext.request.contextPath}/stud/studentadded" method="post">
<form:hidden path="studId"/>
<table>
<tr>
<td><label for="studname">Name: </label> </td>
<td><form:input path="studname" id="name"/></td>
<td><form:errors path="studname" cssStyle="color:#ff0000"></form:errors></td>
</tr>
<tr>
<td><label for="studage">Age: </label> </td>
<td><form:input path="studage" id="age"/></td>
<td><form:errors path="studage" cssStyle="color:#ff0000"></form:errors></td>
</tr>
<tr>
<td><label for="subject.subjname">Opting Subject: </label> </td>
<td>
<form:select path="subject.subjname">
<form:option value="" label="select"></form:option>
<form:options items="${subjects}"/>
</form:select>
</td>
<td><form:errors path="subject.subjname" cssStyle="color:#ff0000"></form:errors></td>
</tr>
<tr>
<td colspan="3">
<input type="Submit" value="Add"/>
</td>
</tr>
</table>
</form:form>
私のフォームバッキングオブジェクトは、学生クラスです。ここでitems = "$ {subjects}"にはコントローラから渡されたList<String>
の件名のリストが含まれています。 path = "subject.subjname"の場合、次のエラーが表示されます。
org.springframework.beans.NotReadablePropertyException: Invalid property 'subject.subjname' of bean class [com.model.studentinfo]: Bean property 'subject.subjname' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter?
しかし、私は適切なゲッターに&セッターを抱えています。私がパス= "件名"を使用する場合、私は送信中に次のエラーが表示されます。
400 The request sent by the client was syntactically incorrect
しかし、私は日付プロパティを使用していません。どのように私はフォームを作ることができます:学生の追加と編集の両方のために働くことを選択してください。これで私を助けてください。あなたは、フォームのバッキングオブジェクト「studentdetails」で、パスのString inputSubjectsフィールドの設定は、以下を使用行う必要があり
は、あなたのパスにstudendetails.subject.subjnameを試してみてください。 – LearningPhase
ありがとうございますが、これは機能しません。 – karthi
これで親切に助けてください。 – karthi