Problema com displayTag [RESOLVIDO]

galera estou precisando fazer tipo um if dentro do displayTag para que se a variavel Bean.certidao for null aparece só uma imagem, agora se for diferente de null aparece uma imagem com um link pra abrir o documento. por um acaso alguem sabe me dizer o que esta faltando aqui, ou se tem um outro jeito para se fazer isso.

<display:column title="Impressão">
${Bean.certidao != null ? "<a href=\"/cemiterio/certidaoObto/"+Bean.certidao+"\" target=\"_blank\"><img src=\"/cemiterio/imagem/impressora1.png\" width=\"20\" height=\"20\" border=\"0\" /></a>" : "<img src=\"/cemiterio/imagem/impressora2.png\" width=\"20\" height=\"20\" border=\"0\" />"}
</display:column>

valew galera

Nunca fiz assim

Eu costumo usar a TagLib core e funciona direitinho.

Ja tentou?

não tentei e duro que agora não da mais para mim colocar nesse projeto, ja usei o displayTag em tudo então tenho que me virar ele.

se por um acaso alguem saber algum jeito de se fazer isso e algum tutorial que fale sobre isso eu agradeço pois até agora achei só um e não tem o exemplo que necessito ou alguma coisa parecida.

valew…

Você não está usando JSTL no projeto? :shock: Se não me engano, a mto tempo fiz um c:choose dentro do displaytag e deu certo

Se a Bean.certidao for null ele da erro?

Então…

Não precisa tirar a DisplayTag. Você pode usar a Taglib core dentro dela sem problemas.

então hover ele não da erro quando o Bean.certidao vem null e sim quando ele tem que executar a parte que ele é diferente de null que não lista nada, eu acredito que o problema é no segundo Bean.certidao, deve ser a forma que eu estou usando que não é a certa.

vinicius_roc vou dar uma olhada nesse taglib e ver o que consigo fazer, mas se alguem souber alguma coisa do próprio displaytag mim será melhor

valew galera pela ajuda.

Cara

Estou com o mesmo problema que você ou parecido.

Eu estou fazendo assim

<c:forEach items="${area}" var="area"> <c:if test="${area.area == null}"> <display:table name="${area}" export="true" id="area"> <display:column property="nome" title="Nome" /> <display:column property="area.nome" title="Area" /> <display:column media="html" > <div id="cad"> <html:form action="/altUser.do" > <html:radio property="btenviar" value="Alterar" >Alterar</html:radio> <html:radio property="btenviar" value="Excluir" >Excluir</html:radio> <html:hidden property="area.id" value="${area.id}" /> <span class="botao"> <html:submit value="Ok" /> </span> </html:form> </div> </display:column> </display:table> </c:if> </c:forEach>

E esta dando certo ele só esta exibindo se for area.area for igual a null

Mas o meu problema é que esta fazendo uma tabela para cada um e não consigo fazer exibir uma tabela só para todos. Se você ou alguem da comunidade tiver uma ideia da um toque por favor.

Inclusive irei abrir um outro topico para que possam nos ajudar

Vlw

Abss

Ele está imprimindo uma tabela para cada área? Não seria colocar a linha display:table para fora do c:forEach?

Para entender melhor meu problema abri outro topico

http://www.guj.com.br/posts/list/132461.java

Ve oque acha. Eu só não entendo da onde vem o erro.

Vlw

Abss

<display:column title="Impressão" >
     <c:if test="${Bean.certidao != null}">
         <a href="/cemiterio/certidaoObto/${Bean.certidao}" target="_blank"><img src="/cemiterio/imagem/impressora1.png" width="20" height="20" border="0" /></a>
     </c:if>
     <c:if test="${Bean.certidao == null}">
         <img src="/cemiterio/imagem/impressora2.png" width="20" height="20" border="0" />
     </c:if>
</display:column>

Vinicius_roc deu certo da uma olhada ai valew… qualquer coisa posta ai.