TheNorth
TheNorth

Reputation: 57

Saving resultset results in arraylist

I'm having trouble finishing a feature of a web app that i'm making.

The following code appearently didn't generate any error,

    //This is the trouver ( find ) function, code is related to DAO pattern.
    public ArrayList<Ticket> trouver( int id_employe ) throws DAOException {
    ArrayList<Ticket> liste = new ArrayList<Ticket>();
    Connection connexion = null;
    PreparedStatement preparedStatement = null;
    ResultSet resultSet = null;
    Ticket ticket = null;

    try {
        connexion = daoFactory.getConnection();
        preparedStatement = initialisationRequetePreparee( connexion, SQL_SELECT_PAR_EMP, false, id_employe );
        resultSet = preparedStatement.executeQuery();

        if ( resultSet.next() ) {
            ticket = map( resultSet );//map function stores a row's result in a Bean.
            liste.add(ticket);
        }
    } catch ( SQLException e ) {
        throw new DAOException( e );
    } finally {
        fermeturesSilencieuses( resultSet, preparedStatement, connexion );
    }
    return liste;
}

Through the servlet:

ArrayList<Ticket> lticket = ticketform.recupererTicket(request);
request.setAttribute("lticket", lticket);
this.getServletContext().getRequestDispatcher(VUE).forward(request, response);

Errors start showing up when it comes to the view:

org.apache.jasper.JasperException: An exception occurred processing JSP page /ListeTickets.jsp at line 29
26: </tr>
27: <c:forEach items="${ requestScope.lticket }" var="mapticket">
28: <tr>
29: <c:forEach items="${mapticket}" var="ticket">
30: <td><c:out value="${ ticket.sujet }"/></td>
31: <td><c:out value="${ ticket.description }"/></td>
32: <td><c:out value="${ ticket.priorite }"/></td>
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:588)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:466)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)

Long story short, I have a list of Beans stored in ArrayList, Need two loops to iterate the whole data, but there comes the error.

Upvotes: 1

Views: 69

Answers (1)

Alex
Alex

Reputation: 11579

It should be only one forEach according to your code:

<c:forEach items="${ lticket }" var="ticket">
<tr>
<td><c:out value="${ ticket.sujet }"/></td>
<td><c:out value="${ ticket.description }"/></td>
<td><c:out value="${ ticket.priorite }"/></td>
</tr>
</c:forEach>

Upvotes: 3

Related Questions