我在列表bean上使用displaytag:utilisateurBean
。我需要在此选项卡上添加一列以添加用于选择元素的复选框。
Pb:使用displaytag
struts在bean中查找属性choixUtilisateur
,而不是formBean
。有没有办法让struts / displaytag在表单中映射这个属性?我不理解这涉及的预备层/业务层的组合。
我理解我在bean上进行迭代,并且他在寻找属性。但是我不理解业务层中decorator属性的映射。
我的代码:
<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>
DecorateurCheckbox.java
添加复选框到我的标签:
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;
}
...
}
错误:
/Administration/acces.jsp。异常:javax.servlet.ServletException: 在对象类型中查找属性“choixUtilisateur”时出错 “xxx.UtilisateurBean”。
答案 0 :(得分:0)
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是表单属性,choixUtilisateur是装饰器的displaytag属性: jsp:
<display:column property="choixUtilisateur" title="modif"></display:column>