2015-04-29 2 views
0

Вот моя модель:javax.el.PropertyNotFoundException: Класс 'com.springapp.mvc.Class' не имеет свойство 'Курсы'

public class Class { 
    @ManyToMany(etc etc) 
    @JoinTable(etc etc) 
    public List<Course> Courses; 

Вот мое мнение:

<c:forEach items="${classes}" var="class"> 
<tr> 
    <td>${class.className}</td> 
    <td> 
    <c:forEach items="${courses}" var="course"> 
     <input type="checkbox" 
      <c:if test="${class.Courses.contains(course)}"> checked</c:if>> 
     ${course.courseName} 
    </c:forEach> 
    </td> 
</tr> 
</c:forEach> 

вид производит только эту ошибку 500:

javax.el.PropertyNotFoundException: The class 'com.springapp.mvc.Class' does not have the property 'Courses'.

ответ

0

EL не искать свойства, но для добытчиков:

public class AnyClass { 

    private String aProperty; 

    private String getAGetter() { 
    // ... 
    } 

} 

${anyClass.aProperty} не работает, ${anyClass.aGetter} преуспеет.

Чтобы преобразовать имя геттера в выражение EL, префикс «get» (или «is») будет удален, а первый символ будет уменьшен.

В вашем случае, я думаю, ваше имя получателя равно getCourses, что дает courses. Поэтому вы должны использовать ${class.courses}.


Следует учитывать, что вы не следуете Java naming conventions.

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