2014-01-23 4 views
0

У меня есть класс класса Public. Это связано с классом Учителя класса как ManyToMany.Hibernate. Свойство не найдено по типу

Вот часть публикации класса

// 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> 

Если кто-нибудь знает причину этой проблемы, я буду gratful за помощью.

ответ

2

Попробуйте переименовать ваши методы доступа к getTeachers и setTeachers (множественное число вместо особых).

Hibernate видит getTeacher, поэтому название объекта teacher. Вместо этого вы пытаетесь получить доступ к свойству teachers.

1

похоже, что из-за ваших getter и setter являются teacher, а не teachers. Hibernate считает setter и getters, а не полями. Изменение их на setTeacher * s * и getTeacher * s * может решить проблему.

Смежные вопросы