Bonjour,
Je travail sous Struts avec Hibernate, et j'essaie d'inserer en base un champ selectionné dans une combobox.
J'arrive a alimenter ma liste, mais pas a recuperer la valeur choisie.
Voici ma jsp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
    <label><bean:message key="label.categ" /></label>
    <html:select property="categorie" value="categorie">
        <html:option value="categorie">-Choisissez-</html:option>
        <html:options name="listeCategorie" />
    </html:select>
Mon action :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
String categorie = request.getParameter("categorie");
L'erreur :
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
javax.servlet.ServletException: BeanUtils.populate
    org.apache.struts.util.RequestUtils.populate(RequestUtils.java:453)
    org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(PopulateActionForm.java:45)
    org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:57)
    org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:48)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:280)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:459)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
 cause mère 
java.lang.IllegalArgumentException: argument type mismatch
    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    java.lang.reflect.Method.invoke(Unknown Source)
    org.apache.commons.beanutils.PropertyUtils.setSimpleProperty(PropertyUtils.java:1650)
    org.apache.commons.beanutils.PropertyUtils.setNestedProperty(PropertyUtils.java:1545)
    org.apache.commons.beanutils.PropertyUtils.setProperty(PropertyUtils.java:1574)
    org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:919)
    org.apache.commons.beanutils.BeanUtils.populate(BeanUtils.java:726)
    org.apache.struts.util.RequestUtils.populate(RequestUtils.java:451)
    org.apache.struts.chain.commands.servlet.PopulateActionForm.populate(PopulateActionForm.java:45)
    org.apache.struts.chain.commands.AbstractPopulateActionForm.execute(AbstractPopulateActionForm.java:57)
    org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:48)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:280)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:459)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
En fait, j'ai une table animaux avec un champ categorie. J'ai donc une classe Animaux et une autre généré par struts baseAnimaux contenant les getteurs et setteurs de la table.

Merci de m'aider.