Son utilisation est assez simple finalement.
Voici un exemple d'utilisation.
Dans votre JSP, ajouté :
<%@taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<html:select property="proprietaire" >
<html:optionsCollection name="InputForm"
property="booleanList"
label="label"
value="value" />
</html:select>
Dans votre formulaire ajoutez :
import org.apache.struts.util.LabelValueBean;
public class InputForm extends ActionForm
{
private String proprietaire ;
private List<LabelValueBean> booleanList = new ArrayList<LabelValueBean>() ;
public InputForm()
{
booleanList.add(new LabelValueBean("OUI", "true")) ;
booleanList.add(new LabelValueBean("NON", "false")) ;
}
public void setBooleanList(List<LabelValueBean> booleanList)
{
this.booleanList = booleanList;
}
public List<LabelValueBean> getBooleanList()
{
return booleanList;
}
public void setProprietaire(String proprietaire)
{
this.proprietaire = proprietaire;
}
public String getProprietaire()
{
return proprietaire;
}
}
Le principe de fonctionnement est le suivant :- Struts génère la liste avec le contenu de l'attibut booleanList (property="booleanList") du formulaire InputForm (name="InputForm")
- Ensuite, il prend la valeur de l'attribut proprietaire (property="proprietaire") pour sélectionner la bonne option.
- A la validation du formulaire, il valorise l'attribut proprietaire.
C'est l'attribut label="label" et value="value" qui indique quelle propriété de l'objet se trouvant dans la liste, prendre.
En effet, la classe LabelValueBean contient :
public class LabelValueBean implements Serializable
{
private String label;
private String value;
}
Cela veut donc dire qu'on peut utiliser nos propre objet et simplement indiquer les attributs à prendre.Pour ceux qui ne souhaite pas utiliser de liste dynamique, il est possible d'utiliser directement :
<html:option value="0">Select Langue</html:option> <html:option value="1">France</html:option> <html:option value="2">English</html:option>dans le html:select
Aucun commentaire:
Enregistrer un commentaire