2009-02-12 6 views
1

[Avertissement] Je suis nouveau sur JSP/Struts/JSTL. Ceci est probablement une question débutant :)JSP - Sauvegarde d'une collection

J'ai une forme qui contient une collection:

public class ServiceForm extends AbstractForm 
{ 
    private List<SrvDO> allSrv = new ArrayList<SrvDO>(); 
} 

je peux voir correctement les données d'objet dans mon formulaire à l'aide de la JSP. La page affiche 5 boîte d'entrée avec les données de la base de données correctement:

<c:forEach items="${serviceForm.allSrv}" var="srv">      
    <html:text name="srv" property="nbDays"/> 
</c:forEach> 

<html:submit/> 

Mais quand j'appuie sur le bouton d'envoi, le formulaire ne contient pas les données mises à jour pour « nbdays ». Je vois toujours les mêmes données que celles montrées avant la mise à jour. Qu'est-ce qui me manque à struts: pour chaque srv, mettre à jour les données "nbDays"?

Répondre

2

trouvé la réponse sur the spring forum:

Votre forme: balise d'entrée ne sait pas et ne devrait pas quoi que ce soit sur le fait qu'il est utilisé dans une autre balise. C'est pourquoi vous devez inclure l'index .

La solution est donc:

<html:text property="allSrv[${srvSta.index}].nbDays"/>