Java Spring和Hibernate:包含对象的对象的表单

Java Spring和Hibernate:包含对象的对象的表单,java,forms,spring,hibernate,Java,Forms,Spring,Hibernate,有一个称为“人”的实体和一个称为“过程”的实体,它们是多对多的关系。连接实体称为“PersonCourse” 我使用以下表单将信息持久保存到“PersonCourse”: 但由于某些原因,personcourse.person和personcourse.course为空。可能有什么问题?尝试更改为: <form:select path="person.id"> <form:select path="course.id"> 或者尝试使用格式化程序是否已确保数据已保存在

有一个称为“人”的实体和一个称为“过程”的实体,它们是多对多的关系。连接实体称为“PersonCourse”

我使用以下表单将信息持久保存到“PersonCourse”:

但由于某些原因,personcourse.person和personcourse.course为空。可能有什么问题?

尝试更改为:

<form:select path="person.id">
<form:select path="course.id">


或者尝试使用
格式化程序

是否已确保数据已保存在数据库中?通过这种方法,你可以得到personcourse?是的,我在所有三个表中都有数据,我可以毫无问题地检索这些数据。唯一的问题是当我试图拯救personcourse时
<form:form method="post" action="addpersoncourse.html" commandName="personcourse">

    <form:label path="person"><spring:message code="label.person"/></form:label>

    <form:select path="person">
        <c:forEach items="${personList}" var="person">
            <form:option value="${person.id}">${person.firstName} ${person.lastName}</form:option>
        </c:forEach>
    </form:select>  

    <form:label path="course"><spring:message code="label.course"/></form:label>

        <form:select path="course">
            <c:forEach items="${courseList}" var="course">
                <form:option value="${course.id}">${course.course}</form:option>
            </c:forEach>
        </form:select>  


        <input type="submit" value="<spring:message code="label.addpersoncourse"/>"/>
</form:form>
@RequestMapping(value = "/addpersoncourse", method = RequestMethod.POST)
public String addpersoncourse(@ModelAttribute("personcourse")
PersonCourse personCourse, BindingResult result) {  

    // HERE personcourse.person and personcourse.course ARE NULL

// Other operation I'm supposed to do
}
<form:select path="person.id">
<form:select path="course.id">