Я хочу доступом к атрибуту, унаследованной одной из моих классов Java, в JSP с использованием JSTL 1.2:Java наследование и JSTL
Java:
public class LigneDeclarationBean {
private ELigneDeclaration ligneDecla;
private ETypeFormulaire typeForm;
...
public ELigneDeclaration getLigneDecla() {
return ligneDecla;
}
public class ELigneDeclaration extends ZELigneDeclaration implements Serializable {
...
}
public class ZELigneDeclaration implements Serializable {
private String sLibelle;
...
public String getSLibelle() {
return sLibelle;
}
}
JSP:
<%
List<LigneDeclarationBean> listelignes = (List) request.getAttribute("listeLignes");
// Affichage de la liste des ligneDeclas
for (int i = 0; i < listelignes.size(); i++) {
LigneDeclarationBean ligneDecla = listelignes.get(i);
%>
${ligneDecla.ligneDecla.sLibelle}
Сообщение об ошибке:
сообщение: Класс 'package.ELigneDeclar ation 'делает не имеет собственности' sLibelle '.
Однако в сценарии это прекрасно работает <%=ligneDecla.getLigneDecla().getSLibelle()%>
верните правильное значение. Является ли это ограничением jstl? Есть ли другой способ доступа к моему атрибуту с помощью этого taglib? Этот проект не использует структуру представления, и jstl, по-видимому, является единственными taglib, которые я мог бы использовать.
Я уже пробовал ваше решение и один элитный джентльмен. Я бы поставил точное имя класса, чтобы быть точным. Мои getter/setters генерируются eclipse, и он отлично работает в другом случае без наследования. – jayjaypg22
, если быть точным, есть 2 синтаксиса: один для унаследованного атрибута, один для прямого атрибута, поэтому решение здесь: $ {ligneDecla.ligneDecla.SLibelle} – jayjaypg22