【问题标题】:Hibernate. Property not found on type休眠。在类型上找不到属性
【发布时间】:2014-01-23 12:44:03
【问题描述】:

我有实体类发布。它与实体类 Teacher 连接为 ManyToMany。

这是发布类的一部分

// create connectivity with table Teacher
public Set<Teacher> teachers;

@ManyToMany
@JoinTable(name = "Bridge2",
           joinColumns = @JoinColumn(name = "PublicationId"),
           inverseJoinColumns = @JoinColumn(name = "TeacherId"))
public Set<Teacher> getTeacher() {
    return teachers;
}

public void setTeacher(Set<Teacher> teachers) {
    this.teachers = teachers;
}

我从数据库中选择发布并将其传递给 JSP 页面。在 JSP 页面上,我尝试查看所有教师,但总是得到异常在类型 org.irs.entities.Publication 上找不到属性“教师”。

这是 JSP 文件的一部分

<td> <!-- view all teachers -->
    <c:forEach var="t" items="${publication.teachers}">
        ${t.teacherFullName}<br/>
    </c:forEach>
</td>

如果有人知道这个问题的原因,我将不胜感激。

【问题讨论】:

    标签: java hibernate jsp


    【解决方案1】:

    尝试将您的访问器方法重命名为 getTeacherssetTeachers(复数而不是单数)。

    Hibernate 看到getTeacher,所以属性名称是teacher。您正在尝试访问属性 teachers

    【讨论】:

      【解决方案2】:

      似乎是因为您的gettersetterteacher 而不是teachers。 Hibernate 关注 settergetters 而不是字段。将它们更改为 setTeacher*s* 和 getTeacher*s* 可能会解决问题。

      【讨论】:

        猜你喜欢
        • 2013-01-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-07
        • 2016-09-16
        相关资源
        最近更新 更多