llucas
Dezembro 4, 2010, 6:17pm
#1
Olá
Eu to fazendo uma aplicação web e fiz uma página de pesquisa na minha aplicação
Na hora de exibir o resultado eu coloco um c:foreach que imprime um ArrayList do meu Bean na página jsf
Mais ou menos assim o código
<c:forEach var="item" items="#{TesteBean.ItensList}">
#{item.nome}
</c:forEach>
O que eu quero saber é se tem como colocar uma mensagem tipo “Nenhum Item Encontrado” quando nenhum item for encontrado(lógico -.-)
Alguma coisa com if ou when e Othrwise
Guevara
Dezembro 5, 2010, 12:47pm
#2
Tente com o <c:choose>, ficando assim:
<c:choose>
<c:when test="${TesteBean.ItensList eq null}">
Nenhum registro foi encontrado
</c:when>
<c:otherwise>
<c:forEach var="item" items="#{TesteBean.ItensList}">
#{item.nome}
</c:forEach>
</c:otherwise>
</c:choose>
Ou:
<c:choose>
<c:when test="${empty TesteBean.ItensList}">
Nenhum registro foi encontrado
</c:when>
<c:otherwise>
<c:forEach var="item" items="#{TesteBean.ItensList}">
#{item.nome}
</c:forEach>
</c:otherwise>
</c:choose>
Não sei se vai precisar do “#” no “test”, tenta com e sem e vê se funciona.
[]s
llucas
Dezembro 5, 2010, 5:46pm
#3
valeu vou tentar desse jeito
Eu tava tentando uma coisa mais ou menos assim
<c:choose>
<c:when test="${TesteBean.ItensList.empty}">
Nenhum registro foi encontrado
</c:when>
<c:otherwise>
<c:forEach var="item" items="#{TesteBean.ItensList}">
#{item.nome}
</c:forEach>
</c:otherwise>
</c:choose>
Mas parece que ele num chamava a função isEmpty() da ArrayList, acho que por que empty é uma palavra chave reservada, sei lá
llucas
Dezembro 5, 2010, 5:48pm
#4
A Aproveitando que tu falou de usar ${} e #{}
Qual a diferença dos 2?
Guevara
Dezembro 6, 2010, 11:26am
#5
Essa tralha ai eu desconheço, tente assim:
<c:when test="${empty TesteBean.ItensList}">
Ou:
<c:when test="${TesteBean.ItensList eq null}">