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
>
>

Reply via email to