HI: Lors de l'utilisation d'une forme, le paramètre forment le clien peuvent être liés à un objet, par exemple:paramters de liaison dans struts2 sans la forme
Dans le client:
<s:form action="register">
<s:textfield name="personBean.firstName" label="First name" />
<s:textfield name="personBean.lastName" label="Last name" />
<s:textfield name="personBean.email" label ="Email"/>
<s:textfield name="personBean.age" label="Age" />
<s:submit/>
</s:form>
Dans le severside:
public class Register extends ActionSupport {
private static final long serialVersionUID = 1L;
private Person personBean;
//................
}
Ensuite, la pa Le rameter du client est lié à l'instance de personBean.
Maintenant, mon problème est de savoir comment lier les paramètres sans un?
Mon action fonctionne comme un service qui sera appelé dans le javascript, alors comment les lier?
Je sais comment obtenir les paramètres:
Map(String,Object) map=ActionContext.getContext.getParameters();
String firstName= map.get("firstname")[0];
// ..........
C'est trop laid :(
UPDATE
public class ParaWrapper(){
private String firstName;
public void setFirstName(String ..){
this.firstName=...
}
//the getter of firstName
public ....
}
public MyAction extends ActionSupport{
private ParaWrapper wrapper;
public void setXXX()...
public void getXXX()...
public void execute(){
System.out.println(wrapper); //here I can not get the parameters,it seems that the parameters are not poputed to this object.
}
}
Comme je n'utilise pas la balise s: form, alors Comment les lattes savent-elles où placer les paramètres?
Merci, vous avez raison. Mais je suis un peu gourmand :) De toute façon peut éviter le point dans l'uri? Puisque personBean.firstName = a_string & personBean.lastName = my_lastName est plus long que firstName = a_string & lastName = my_lastName. – hguser
Non, les balises struts2 utilisent cette terminologie spécifiquement pour les beans. MAIS vous ne pouvez bien sûr pas utiliser une requête GET mais une requête POST avec votre JavaScript si vous savez comment faire cela et mettre la personBean.firstName = a_string & personBean.lastName = my_lastName ... dans la demande de publication afin qu'elle ne soit pas visible dans l'URL . – Akku