Je reçois l'erreur ci-dessus en essayant de remplir un fichier xml avec des informations provenant d'une ArrayList simple de la classe RankingResult. Après avoir cherché autour, j'ai découvert que la plupart des gens avec cette erreur fait des fautes de frappe dans le xml, mais cela ne semble pas être le cas ici (je me sentirai vraiment stupide si c'est le cas).javax.el.PropertyNotFoundException: La propriété 'genero' est introuvable sur le modèle model.RankingResult
J'ai déjà une chose vraiment semblable passe et fonctionne parfaitement (contrôleur réoriente à un xml envoyer un ArrayList d'objets qui est ensuite imprimé par, donc je suis complètement perdu ici
Voici quelques code:.
Le "ranking.jsp" xml
<?xml version="1.0" encoding="UTF-8"?>
<%@page contentType="application/xml" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<data>
<c:forEach items="${results}" var="result">
<tr>
<td>${result.genero}</td>
<td><c:out value="${result.quantidade}"/></td>
</tr>
</c:forEach>
</data>
Controller doPost()
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String ator = request.getParameter("ator");
String diretor = request.getParameter("diretor");
ArrayList<RankingResult> results = null;
try{
BuscaDAO b2DAO = new BuscaDAO();
results = b2DAO.busca2(ator, diretor);
} catch(DAOException | SQLException ex) {
Logger.getLogger(Busca1.class.getName()).log(Level.SEVERE, null, ex);
}
request.setAttribute("results", results);
request.getRequestDispatcher("/WEB-INF/xml/ranking.jsp").forward(request, response);
}
Le débogage confirme que le résultat "ArrayList" est correctement rempli.
La classe RankingResult:
public class RankingResult {
public final String genero;
public final int quantidade;
public RankingResult(String genero, int quantidade){
this.genero = genero;
this.quantidade = quantidade;
}
}
arbre du projet:
Vous avez également absolument raison, je n'avais aucune idée. J'ai essayé d'utiliser des getters à un moment donné, mais je suppose que je n'ai pas fait attention aux résultats et j'ai pensé que le problème persistait. Je blâme [ce type] (https://stackoverflow.com/a/6271781/2870015) pour les champs publics tho: o). Merci beaucoup pour votre temps. – Panque