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(ComposableRequestProcessor.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(PopulateActionForm.java:50) > > > > > org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:60) > > > > > org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) > > > org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) > > > > > org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) > > > org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) > > > > > org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.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(PropertyUtilsBean.java:505) > > > > > org.apache.commons.beanutils.PropertyUtilsBean.getIndexedProperty(PropertyUtilsBean.java:408) > > > > > org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:760) > > > > > org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:837) > > > > > org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java: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(PopulateActionForm.java:50) > > > > > org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:60) > > > > > org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51) > > > org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) > > > > > org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305) > > > org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191) > > > > > org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.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