Bonjour toutes et tous.

Je cherche à récupérer les données que j’affiche dans un tableau à l'aide balises struts et je sèche sur la solution.

Voici le code initial de ma jsp liste.jsp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
<html:form action="monAction.do" enctype="multipart/form-data">
  <table width="100%">
    <logic:notEmpty name="listePiecesJointes" property="piecesJointes"
    scope="request">
 
      <logic:iterate id="piece" name="listePiecesJointes"   
      property="piecesJointes" indexId="pjIndex">
	<tr style="position:relative;">
	  <td width="45%" align="left">
            <a href="toto.jsp"><bean:write name="piece" property="id" /></a>
          </td>
	</tr>
      </logic:iterate>
    </logic:notEmpty>
  </table>
  <html:submit/>
</html:form>
Logic à cet instant de ne pas récupérer la liste des données dans le formulaire
J’ai donc juste ajouter la ligne avant la fin de la balise <tr>.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<html:hidden property='<%=\"piece[\"+pjIndex+\"].id\" %>' styleId='<%=\"piece[\"+pjIndex+\"].id\" %> '/>
Dans mon form ListePiecesJointes j’ai les methodes

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
private List piecesJointes = new ArrayList() ;
 
public List getPiecesJointes(){
	return piecesJointes ;
}
 
public PieceJointeForm getPiece(int index){
	return piecesJointes.get(index);
}
Et dans PieceJointeForm la méthode

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
String id ="";
public String getId(){
        return id;
}
Sauf que là j'ai une erreur au moment d'afficher les données :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
javax.servlet.ServletException: No getter method for property piece[0].id of bean org.apache.struts.taglib.html.BEAN
Pourquoi ne trouve t il pas ma méthode ?
la solution que j'envisage est elle correcte ?

Je suis sur un serveur Tomcat avec Eclipse.

Merci pour votre aide