Puis-je envoyer un formulaire Struts faisant référence à des champs POJO (pas seulement String ou boolean)?
Question
J'ai un ActionForm Struts (1.3x) qui possède plusieurs propriétés / champs String et boolean, mais également des champs POJO.
donc ma forme ressemble à quelque chose comme:
MyForm extends ActionForm {
private String name;
private int id;
private Thing thing;
...getters/setters...
}
Dans le fichier JSP, je peux référencer les champs du POJO comme suit:
<html:text property="thing.thingName" />
... et les valeurs s'affichent correctement, mais si j'essaie de soumettre le formulaire, j'obtiens l'erreur ServletException: BeanUtils.populate.
Il semble y avoir beaucoup d'informations sur ce sujet général sur le Web, mais aucune ne répond vraiment à ma question spécifique, à savoir: ne devrais-je pas pouvoir soumettre un formulaire dans Struts contenant des champs qui sont des POJO?
La solution
Vous pouvez le faire, à condition que les champs suivent les conventions JavaBean et que le poseur prenne quelque chose que Struts peut comprendre.
Donc, Thing
a besoin de getThingName ()
et setThingName (String)
.