Hello Peter,

Thanks for your reply.

You may download the project at this URL : 
http://athe.pagesperso-orange.fr/EssaiA.zip

zip file contains Java sources in /WEB-INF/src :-) you will find a small part 
of the real project, this one is very big.

Here's the form bean :
package bean;

import org.apache.struts.action.ActionForm;

public class PageFormulaire extends ActionForm {

        /**
         * 
         */
        private static final long serialVersionUID = 1L;
        private Personne liste[];

        public Personne[] getListe() {
                return liste;
        }
        public void setListe(Personne[] liste) {
                this.liste = liste;
        }
        public void setNom(int index , Personne nom) {
                if (liste == null)
                        liste = new Personne[index + 1];
                if (liste.length <= index) {
                        Personne[] t = new Personne[index + 1];
                        int i = 0;
                        while (i < liste.length) {
                                t[i] = liste[i];
                                i++;
                        }
                        liste = t;
                }
                liste[index] = nom;
        }
        public Personne getNom(int index) {
                if (liste == null)
                        liste = new Personne[index + 1];
                if (liste.length <= index) {
                        Personne[] t = new Personne[index + 1];
                        int i = 0;
                        while (i < liste.length) {
                                t[i] = liste[i];
                                i++;
                        }
                        liste = t;
                }
                return liste[index];
        }

}

Here's Personne bean :

package bean;

import org.apache.struts.action.ActionForm;

public class Personne extends ActionForm {
        /**
         * 
         */
        private static final long serialVersionUID = 1L;
        private String nom;
        private String prenom;

        public String getNom() {
                return nom;
        }
        public void setNom(String nom) {
                this.nom = nom;
        }
        public String getPrenom() {
                return prenom;
        }
        public void setPrenom(String prenom) {
                this.prenom = prenom;
        }
}

Thanks,

Dom


--- En date de : Sam 27.11.10, Peter Nguyen <pe...@peternguyen.id.au> a écrit :

> De: Peter Nguyen <pe...@peternguyen.id.au>
> Objet: RE: javax.servlet.ServletException: BeanUtils.populate
> À: "'Struts Users Mailing List'" <user@struts.apache.org>
> Date: Samedi 27 novembre 2010, 0h05
> Lol. Guys you're not serious about
> not knowing who Tim Berners Lee is ?! :D
> 
> Roger, what does your form bean look like? How have you
> backed your indexed property?
> 
> Peter.
> 
> -----Original Message-----
> From: Dominique JUSTE [mailto:dju...@yahoo.com]
> 
> Sent: Saturday, 27 November 2010 4:54 AM
> To: Struts Users Mailing List
> Subject: RE: javax.servlet.ServletException:
> BeanUtils.populate
> 
> Are the Bangles Struts expert ?... Are they as skilled in
> Struts as singing ?... :)
> 
> --- En date de : Ven 26.11.10, Martin Gainty <mgai...@hotmail.com>
> a écrit :
> 
> > De: Martin Gainty <mgai...@hotmail.com>
> > Objet: RE: javax.servlet.ServletException:
> BeanUtils.populate
> > À: "Struts Users Mailing List" <user@struts.apache.org>
> > Date: Vendredi 26 novembre 2010, 18h34
> > 
> > you've listed 5 people who are more well known than
> Tim Berners-Lee
> > 
> > Martin
> > ______________________________________________
> > Verzicht und Vertraulichkeitanmerkung/Note de déni et
> de 
> > confidentialité
> > 
> > Diese Nachricht ist vertraulich. Sollten Sie nicht der
> vorgesehene 
> > Empfaenger sein, so bitten wir hoeflich um eine
> Mitteilung. Jede 
> > unbefugte Weiterleitung oder Fertigung einer Kopie ist
> unzulaessig. 
> > Diese Nachricht dient lediglich dem Austausch von
> Informationen und 
> > entfaltet keine rechtliche Bindungswirkung. Aufgrund
> der leichten 
> > Manipulierbarkeit von E-Mails koennen wir keine
> Haftung fuer den 
> > Inhalt uebernehmen.
> > 
> > Ce message est confidentiel et peut être
> privilégié. Si vous n'êtes 
> > pas le destinataire prévu, nous te demandons avec
> bonté que pour 
> > satisfaire informez l'expéditeur.
> > N'importe quelle diffusion non autorisée ou la copie
> de ceci est 
> > interdite. Ce message sert à l'information seulement
> et n'aura pas 
> > n'importe quel effet légalement obligatoire. Étant
> donné que les email 
> > peuvent facilement être sujets à la manipulation,
> nous ne pouvons 
> > accepter aucune responsabilité pour le contenu
> fourni.
> > 
> > 
> > 
> >  
> > 
> > > Date: Fri, 26 Nov 2010 18:15:23 +0100
> > > Subject: Re: javax.servlet.ServletException:
> > BeanUtils.populate
> > > From: maurizio.cucchi...@gmail.com
> > > To: user@struts.apache.org
> > > 
> > > Susanna Hoffs – vocals/guitars
> > > Vicki Peterson – vocals/guitars/bass guitar
> Debbi Peterson – 
> > > vocals/drums/bass guitar Annette Zilinskas –
> vocals/bass guitar
> > (1982–1983)
> > > Michael Steele – vocals/bass guitar/guitars
> > (1983–2005)
> > > 
> > > Did I win something?
> > > 
> > > 2010/11/26 Martin Gainty <mgai...@hotmail.com>:
> > > > who are the Bangles?
> > > >
> > > > Martin
> > > >
> ______________________________________________
> > > > Verzicht und Vertraulichkeitanmerkung/Note
> de
> > déni et de confidentialité
> > > >
> > > > Diese Nachricht ist vertraulich. Sollten
> Sie
> > nicht der vorgesehene Empfaenger sein, so bitten wir
> hoeflich um eine 
> > Mitteilung. Jede unbefugte Weiterleitung oder
> Fertigung einer Kopie 
> > ist unzulaessig. Diese Nachricht dient lediglich dem
> Austausch von 
> > Informationen und entfaltet keine rechtliche
> Bindungswirkung. Aufgrund 
> > der leichten Manipulierbarkeit von E-Mails koennen wir
> keine Haftung 
> > fuer den Inhalt uebernehmen.
> > > > Ce message est confidentiel et peut être
> > privilégié. Si vous n'êtes pas le destinataire
> prévu, nous te 
> > demandons avec bonté que pour satisfaire informez
> l'expéditeur. 
> > N'importe quelle diffusion non autorisée ou la copie
> de ceci est 
> > interdite. Ce message sert à l'information seulement
> et n'aura pas 
> > n'importe quel effet légalement obligatoire. Étant
> donné que les email 
> > peuvent facilement être sujets à la manipulation,
> nous ne pouvons 
> > accepter aucune responsabilité pour le contenu
> fourni.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >> Date: Fri, 26 Nov 2010 10:55:58 -0500
> > > >> Subject: Re:
> javax.servlet.ServletException:
> > BeanUtils.populate
> > > >> From: davelnew...@gmail.com
> > > >> To: user@struts.apache.org
> > > >>
> > > >> Oh. I'm sorry, I completely missed the
> nested
> > tags (not sure how I missed
> > > >> it, though :)
> > > >>
> > > >> Sorry for the confusion.
> > > >>
> > > >> Dave
> > > >>
> > > >> On Fri, Nov 26, 2010 at 8:29 AM,
> Dominique
> > JUSTE <dju...@yahoo.com>
> > wrote:
> > > >>
> > > >> > Thank you Dave,
> > > >> >
> > > >> > Let me show you the generated HTML
> file
> > :
> > > >> > <body>
> > > >> > <table>
> > > >> > <form name="pageForm"
> method="post"
> > action="/EssaiA/traitement.do">
> > > >> >
> > > >> > <tr>
> > > >> > <td>Nom</td>
> > > >> > <td><input type="text"
> > name="liste[0].nom"
> > > >> > value="1"></td>
> > > >> > <td>Prénom</td>
> > > >> > <td><input type="text"
> > name="liste[0].prenom"
> > > >> > value="0"></td>
> > > >> > </tr>
> > > >> >
> > > >> > <tr>
> > > >> > <td>Nom</td>
> > > >> > <td><input type="text"
> > name="liste[1].nom"
> > > >> > value="9"></td>
> > > >> > <td>Prénom</td>
> > > >> > <td><input type="text"
> > name="liste[1].prenom"
> > > >> > value="2"></td>
> > > >> > </tr>
> > > >> >
> > > >> > .....
> > > >> > </body>
> > > >> >
> > > >> > We see the indexed liste
> (liste[0],
> > liste[1], ...).
> > > >> >
> > > >> > So, what may I do to indicate that
> form
> > contains an indexed property ? In
> > > >> > which file(s) ?
> > > >> >
> > > >> >
> > > >> >
> > > >> >
> > > >> >
> > > >> > --- En date de : Ven 26.11.10,
> Dave
> > Newton <davelnew...@gmail.com>
> > a écrit
> > > >> > :
> > > >> >
> > > >> > > De: Dave Newton <davelnew...@gmail.com>
> > > >> > > Objet: Re:
> > javax.servlet.ServletException: BeanUtils.populate
> > > >> > > À: "Struts Users Mailing
> List"
> > <user@struts.apache.org>
> > > >> > > Cc: lukasz.len...@gmail.com
> > > >> > > Date: Vendredi 26 novembre
> 2010,
> > 14h01
> > > >> > > There's nothing in the form
> that indicates it's an indexed 
> > > >> > > property/collection.
> > > >> > >
> > > >> > > On Fri, Nov 26, 2010 at 5:40
> AM,
> > Dominique JUSTE <dju...@yahoo.com>
> > > >> > > wrote:
> > > >> > >
> > > >> > > >
> > > >> > > > Hello all,
> > > >> > > >
> > > >> > > > Thanks a lot for your
> replies.
> > As I'm French, I hope I
> > > >> > > will clearly expose
> > > >> > > > my problem. It has been a
> long
> > time since my last
> > > >> > > English draft. :)
> > > >> > > >
> > > >> > > > I've worked for one month
> on
> > an application. It was
> > > >> > > created with Woody
> > > >> > > > framework, which is no
> longer
> > supported. Consequently
> > > >> > > my mission is to turn
> > > >> > > > it to Struts. Work is
> almost
> > completed, but there is
> > > >> > > one problem left, I've
> > > >> > > > been trying fixing it
> since
> > Monday but I can't do
> > > >> > > anything, I have a
> > > >> > > > Beanutils exception
> :-((.
> > > >> > > >
> > > >> > > > The application is
> composed of
> > MySQl 5.0, Hibernate
> > > >> > > 3.0 and Struts 1.3.10.
> > > >> > > > My problem is on a
> formular,
> > hence Struts.
> > > >> > > >
> > > >> > > > I have a two beans :
> > > >> > > > - Personne (French
> translation
> > of Character) with
> > > >> > > String attributs name and
> > > >> > > > firstname,
> > > >> > > > - PageFormulaire
> (extends
> > ActionForm), with only one
> > > >> > > attribut, Personne[]
> > > >> > > > listP.
> > > >> > > > **I'm sure the exception
> is
> > caused by this dynamic
> > > >> > > array.** If I put an
> > > >> > > > unique bean in
> PageFormulaire,
> > application perfectly
> > > >> > > works.
> > > >> > > >
> > > >> > > > Both beans have setters
> and
> > getters but I created in
> > > >> > > PageFormulaire two
> > > >> > > > more :
> > > >> > > > - public void setNom(int
> index
> > , Personne nom)
> > > >> > > > - public Personne
> getNom(int
> > index)
> > > >> > > >
> > > >> > > > An action instanciates a
> > PageFormulaire bean, fills in
> > > >> > > with datas in MySQL,
> > > >> > > > puts it in request then
> calls
> > a JSP. That's OK, the
> > > >> > > formular appears with
> > > >> > > > the datas. But when
> clicking
> > submit button,
> > > >> > > application crashes, and
> shows
> > > >> > > > this accursed exception
> :
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > javax.servlet.ServletException: BeanUtils.populate
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.ComposableRequestProcessor.process(ComposableR
> > equestProcessor.java:286)
> > > >> > > >
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913
> > )
> > > >> > > >
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
> > > >> > > >
> > > >> > >
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> > > >> > > >
> > > >> > >
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > javax.servlet.ServletException: BeanUtils.populate
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.util.RequestUtils.populate(RequestUtils.java:475)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(P
> > opulateActionForm.java:50)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(Ab
> > stractPopulateActionForm.java:60)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.commands.ActionCommandBase.execute(ActionComma
> > ndBase.java:51)
> > > >> > > >
> > > >> > >
> >
> org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.j
> > ava:305)
> > > >> > > >
> > > >> > >
> >
> org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.ComposableRequestProcessor.process(ComposableR
> > equestProcessor.java:283)
> > > >> > > >
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913
> > )
> > > >> > > >
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
> > > >> > > >
> > > >> > >
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> > > >> > > >
> > > >> > >
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > java.lang.NullPointerException
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.beanutils.PropertyUtilsBean.getIndexedProperty(Prop
> > ertyUtilsBean.java:505)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.beanutils.PropertyUtilsBean.getIndexedProperty(Prop
> > ertyUtilsBean.java:408)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(Prope
> > rtyUtilsBean.java:760)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUti
> > lsBean.java:837)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.j
> > ava:903)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.beanutils.BeanUtilsBean.populate(BeanUtilsBean.java
> > :830)
> > > >> > > >
> > > >> > >
> >
> org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:433)
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.util.RequestUtils.populate(RequestUtils.java:473)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(P
> > opulateActionForm.java:50)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(Ab
> > stractPopulateActionForm.java:60)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.commands.ActionCommandBase.execute(ActionComma
> > ndBase.java:51)
> > > >> > > >
> > > >> > >
> >
> org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.j
> > ava:305)
> > > >> > > >
> > > >> > >
> >
> org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> >
> org.apache.struts.chain.ComposableRequestProcessor.process(ComposableR
> > equestProcessor.java:283)
> > > >> > > >
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913
> > )
> > > >> > > >
> > > >> > > >
> > > >> > >
> >
> org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
> > > >> > > >
> > > >> > >
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
> > > >> > > >
> > > >> > >
> >
> javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
> > > >> > > >
> > > >> > > > Here's the JSP :
> > > >> > > >
> > > >> > > > <%@ taglib
> > uri="/WEB-INF/tld/struts-nested.tld"
> > > >> > > prefix="n" %>
> > > >> > > > <%@ taglib
> > uri="/WEB-INF/tld/struts-html.tld"
> > > >> > > prefix="h" %>
> > > >> > > > <h:html>
> > > >> > > > <head>
> > > >> > > > </head>
> > > >> > > > <body>
> > > >> > > > <table>
> > > >> > > > <n:form
> > > >> > > action="/traitement.do">
> > > >> > > >
> > > >> > > <n:iterate name="CLE"
> > property="liste">
> > > >> > > >
> > > >> > > <tr>
> > > >> > > >
> > > >> > > <td>Nom</td>
> > > >> > > >
> > > >> > > <td><n:text
> > > >> > >
> property="nom"/></td>
> > > >> > > >
> > > >> > > <td>Prénom</td>
> > > >> > > >
> > > >> > > <td><n:text
> > > >> > >
> property="prenom"/></td>
> > > >> > > >
> > > >> > > </tr>
> > > >> > > >
> > > >> > > </n:iterate>
> > > >> > > >
> > > >> > > <tr>
> > > >> > > >
> > > >> > > <td
> > > >> > > colspan="4"><n:submit
> > > >> > >
> > value="Enregistrer"/></td>
> > > >> > > >
> > > >> > > </tr>
> > > >> > > > </table>
> > > >> > > > </n:form>
> > > >> > > > </body>
> > > >> > > > </h:html>
> > > >> > > >
> > > >> > > > I thought I forgot the
> put the
> > bean on session scope,
> > > >> > > but although I write
> > > >> > > > it on struts-config.xml,
> > nothing to do...
> > > >> > > >
> > > >> > > > <form-beans>
> > > >> > > >
> > > >> > > <form-bean name="pageForm"
> > > >> > >
> type="bean.PageFormulaire"/>
> > > >> > > > </form-beans>
> > > >> > > >
> > > >> > > > <action-mappings>
> > > >> > > >
> > > >> > > <action path="/traitement"
> > name="pageForm"
> > > >> > > >
> type="presentation.Traitement"
> > scope="session"/>
> > > >> > > > </action-mappings>
> > > >> > > >
> > > >> > > > Note : class pathes are
> > obviously correct :)
> > > >> > > >
> > > >> > > > So, does anyone have an
> idea
> > ?... If necessary, I may
> > > >> > > send by mail the WAR
> > > >> > > > files containing all
> Java
> > sources.
> > > >> > > >
> > > >> > > > Thanks for your help.
> > > >> > > >
> > > >> > > > Sincerly,
> > > >> > > >
> > > >> > > > Dominique
> > > >> > > >
> > > >> > > >
> > > >> > > > --- En date de : Jeu
> 25.11.10,
> > Lukasz Lenart <
> > > >> > lukasz.len...@googlemail.com>
> > > >> > > > a écrit :
> > > >> > > >
> > > >> > > > > De: Lukasz Lenart
> <lukasz.len...@googlemail.com>
> > > >> > > > > Objet: Re:
> > javax.servlet.ServletException:
> > > >> > > BeanUtils.populate
> > > >> > > > > À: "Struts Users
> Mailing
> > List" <user@struts.apache.org>
> > > >> > > > > Date: Jeudi 25
> novembre
> > 2010, 22h31
> > > >> > > > > 2010/11/25
> Dominique
> > JUSTE <dju...@yahoo.com>:
> > > >> > > > > > Although I have
> used
> > Struts for five years,
> > > >> > > I have
> > > >> > > > > been facing a
> trouble
> > since Monday and I don't
> > > >> > > understand
> > > >> > > > > what's happening...
> > > >> > > > >
> > > >> > > > > "Monday, monday ...
> manic
> > monday..."
> > > >> > > > >
> > > >> > > > > http://www.youtube.com/watch?v=lAZgLcK5LzI
> 
> > > >> > > > >
> > > >> > > > >
> > > >> > > > > Kind regards ;-)
> > > >> > > > > --
> > > >> > > > > Łukasz
> > > >> > > > > + 48 606 323 122 http://www.lenart.org.pl/
> 
> > > >> > > > > Kapituła Javarsovia
> 2010
> > http://javarsovia.pl
> 
> > > >> > > > >
> > > >> > > > >
> > > >> > >
> >
> ---------------------------------------------------------------------
> > > >> > > > > To unsubscribe,
> e-mail:
> > user-unsubscr...@struts.apache.org
> > > >> > > > > For additional
> commands,
> > e-mail: user-h...@struts.apache.org
> > > >> > > > >
> > > >> > > > >
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > > >
> > > >> > >
> >
> ---------------------------------------------------------------------
> > > >> > > > To unsubscribe, e-mail:
> user-unsubscr...@struts.apache.org
> > > >> > > > For additional commands,
> > e-mail: user-h...@struts.apache.org
> > > >> > > >
> > > >> > > >
> > > >> > >
> > > >> >
> > > >> >
> > > >> >
> > > >> >
> > > >> >
> >
> ---------------------------------------------------------------------
> > > >> > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> > > >> > For additional commands, e-mail: user-h...@struts.apache.org
> > > >> >
> > > >> >
> > > >
> > > 
> > > 
> > > 
> > > --
> > > Maurizio Cucchiara
> > > 
> > >
> >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> > > For additional commands, e-mail: user-h...@struts.apache.org
> > > 
> >     
> >         
> >           
> >   
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> For additional commands, e-mail: user-h...@struts.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> For additional commands, e-mail: user-h...@struts.apache.org
> 
> 




---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
For additional commands, e-mail: user-h...@struts.apache.org

Reply via email to