Problema com DisplayTag

Olá pessoal! Seguinte, eu quero acessar um valor do meu resultset, para a partir dele fazer uma condicao e exibi-lo na displaytag, estou fazendo assim

minha tabela

<display:table sort="list" id="tabela" uid="tabela" class="its" pagesize="15" name="${results.rows}" decorator="dyndecorator">

Minha coluna que quero fazer a condicao

<c:if test="${tabela.id_acomodacao == 2}"> <display:column value="TESTE"/> </c:if>

O seguinte erro ocorre

[quote]javax.el.PropertyNotFoundException: Property ‘id_acomodacao’ not found on type org.apache.commons.beanutils.BasicDynaBean
javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:193)
javax.el.BeanELResolver.property(BeanELResolver.java:267)
javax.el.BeanELResolver.getValue(BeanELResolver.java:60)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
org.apache.el.parser.AstValue.getValue(AstValue.java:97)
org.apache.el.parser.AstEqual.getValue(AstEqual.java:21)
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:928)
org.apache.jsp.includes.acomodacao_jsp._jspx_meth_c_005fif_005f0(acomodacao_jsp.java:496)
org.apache.jsp.includes.acomodacao_jsp._jspService(acomodacao_jsp.java:302)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
[/quote]

Porém este campo existe na tabela…não sei oq estou fazendo de errado… valew

ninguem? :frowning:

vc tem certeza que o rows tem um atributo id_acomodacao e um getId_acomodacao?

Então…Olha como estou fazendo…eu estou jogando um ResultSet no displayTag…e naum um List, pra isso funcionar eu devo que ter obrigatoriamente um list pra fazer isso funcionar?

Da documentação do displaytag, esses são os objetos suportados pela lib.

[quote]The table tag actually supports the following kind of objects:

* a Collection
* an Enumeration
* a Map (values are displayed in row)
* a Dictionary (values are displayed in row)
* an array
* an Iterator
* any Object with an iterator() method
* ... any other object will be displayed on a single row[/quote]

Acho que o erro está acontecendo porque você está tentando exibir uma propriedade que não existe no ResultSet.

Entao…o erro ocorria pq eu estava exibindo um ResultSet quando deveria jogar um List lá! Agora esta funcionando…Mas agora estava procurando como se faz um if de linha mas naum acho…Tipo se o valor retornado for 0 exibe Não e se for 1 exibe Sim, como se faz?!

valew []s

Acho que tem que usar a tag display:column sem o atributo property, e aninhada dentro dela, o <c:if/> com o <c:out/>. Já tentou algo nessa linha?

Opa achei oq queria! Era assim:
&lt;display:column title="Situação"&gt;${lista.ativo == 1 ? "CADASTRO" : "PRÉ-CADASTRO"}&lt;/display:column&gt;

valew