Domanda

Ho un semplice progetto di test in Spring 3, fondamentalmente un metodo all'interno del controller che recupera i dati da un arraylist e "dovrebbe" passarli a una vista THSI è come appare il metodo:

@RequestMapping(value="/showUsers")
public String showUsers(Model model){
    ArrayList<User> users=this.copy();
    model.addAttribute(users);
    return "showUsers";
}

Ed ecco JSP (showusers.jsp)

Entrambi eseguono senza registri o avvertimenti la vista viene visualizzata ma senza il ArrayList<User> Dati :(

<table align="center" border="1">
    <tr>
        <td>Nr:</td><td>Name:</td><td>Email</td><td>Modify?</td>
    </tr> 
    <c:forEach var="user" items="${users}" varStatus="status">
        <tr>
            <td><c:out value="${status.count}"/></td><td><c:out value="${user.name}"/></td>
            <td><c:out value="${user.email}"/></td><td>Modify</td>
        </tr>   
    </c:forEach>
</table>

Qualche consiglio? Grazie!

È stato utile?

Soluzione

Il Documentazione del modello elenca 2 metodi per l'aggiunta di attributi a a Modello. Stai usando la versione senza fornire un nome, quindi la primavera userà un file Nome generato. Penso che questo nome generato non sia quello che pensi che sia.

Potresti aggiungere il modello usando model.addAttribute("users", users);

Altri suggerimenti

Grazie a tutti, l'ho risolto in questo modo:

@RequestMapping(value="/showUsers")
@ModelAttribute("users")
public ArrayList<User> showUsers(){

    return userList;
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top