Pergunta

Eu uso o DisplayTag em uma lista Bean: utilisateurBean. Preciso adicionar uma coluna nesta guia para adicionar uma caixa de seleção para selecionar um elemento.

PB: com o displaytag Struts procura a propriedade choixUtilisateur no feijão e não no formBean. Existe uma maneira de falar sobre suportes/exibição para mapear essa propriedade no formulário? Não entendo a mistura de camada de prestação/ camada de negócios que isso envolve.

Entendo que eu itera no feijão e que ele procura a propriedade. Mas não entendi o mapeamento da propriedade Decorator na camada de negócios.

Meu código:

<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="&nbsp;"></display:column>
...
   </display:table></div>
</html:form>

o DecorateurCheckbox.java Para adicionar a caixa de seleção à minha guia:

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;
    }
...
}

Erro:

/Administration/acces.jsp. Exceção: javax.servlet.ServleTexception: Erro à procura de propriedades "Choixutilisateur" no tipo de objeto "xxx.utilisateururban".

Foi útil?

Solução

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 é a propriedade do formulário e Choixutilisateur é a propriedade DisplayTag com o decorador: JSP:

<display:column property="choixUtilisateur" title="modif"></display:column>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top