displaytag, wie Kontrollkästchen integrieren?
-
23-09-2019 - |
Frage
Ich verwende displaytag auf einer Liste Bohne: utilisateurBean
. Ich brauche eine Spalte auf diesen Registerkarte hinzufügen zur Auswahl eines Elements ein Kontrollkästchen hinzuzufügen.
Pb: Mit dem displaytag
Streben sieht für die Eigenschaft choixUtilisateur
in der Bohne und nicht in den formBean
. Gibt es eine Möglichkeit zu reden Streben / displaytag diese Eigenschaft in Form abzubilden? Ich verstehe nicht, die Mischung aus prestenation Schicht / Business-Schicht, die damit verbunden.
Ich verstehe, dass ich Iterierte auf der Bohne und dass er für die Eigenschaft sieht in. Aber ich habe die Abbildung der Dekorateur Eigenschaft in der Business-Schicht nicht verstehen.
Mein Code:
<html:form action="/rechercheUtilisateur"
name="formRechercheUtilisateur"
decorator="org.displaytag.render.DecorateurCheckbox"
type="lan.poujoulat.osac.forms.FormRechercheUtilisateur">
...
<div align="center"><display:table style="width: 100%;"
class="mars" sort="list"
name="formRechercheUtilisateur.listeUtilisateurs"
id="formRechercheUtilisateur.listeUtilisateurs"
decorator="org.displaytag.render.DecorateurCheckbox"
cellspacing="4" cellpadding="2" pagesize="10"
requestURI="rechercheUtilisateur.do" export="true" >
<display:column title="id" property="id" sortable="true"
style="color: black;" headerClass="sortable"></display:column>
...
<display:column media="html" property="choixUtilisateur" title=" "></display:column>
...
</display:table></div>
</html:form>
Die DecorateurCheckbox.java
Checkbox meine Registerkarte hinzuzufügen:
public class DecorateurCheckbox extends TableDecorator{
...
public String getChoixUtilisateur()
{
String retour = "";
UtilisateurBean user= (UtilisateurBean) getCurrentRowObject();
int idUser ;
idUser = user.getId();
retour = "<input type='checkbox' name='formRechercheUtilisateur' property='choixUtilisateur' value='"+idUser+"' id='selectedArticle" + idUser + "' />";
return retour;
}
...
}
Fehler:
/Administration/acces.jsp. Ausnahme: javax.servlet.ServletException: Fehler aufzublicken Eigenschaft „choixUtilisateur“ in Objekttyp "Xxx.UtilisateurBean".
Lösung
public class DecorateurCheckbox extends TableDecorator{
public String getChoixUtilisateur()
{
String retour = "";
UtilisateurBean user= (UtilisateurBean) getCurrentRowObject();
int idUser ;
idUser = user.getId();
retour = "<input type='checkbox' name='utilisateurModif' property='choixUtilisateur' value='"+idUser+"' id='" + idUser + "' />";
return retour;
}
}
utilisateurModif ist die Form, Eigenschaft und choixUtilisateur ist die displaytag Eigenschaft mit dem Dekorateur: jsp:
<display:column property="choixUtilisateur" title="modif"></display:column>