Erro com <c:if> [RESOLVIDO]

5 respostas
B

Olá gente, estou tendo problemas quando tento usar JSTL, mai especificamente quando tento usar o <c:if>

Vejam o trecho do meu código abaixo:

<display:table name="achei" id="tabela" style="width:100%;">
        <c:if test=${tabela.statusPedido.getId() < 3 }>
		<display:column title="Estabelecimento" style="width:15%; background: #1E9B43">
			<font color='white' size='2,5'>${tabela.estabelecimento.getNome()}</font>
		</display:column>
	</c:if>
	<c:if test="${tabela.statusPedido.getId() == 3}">
		<display:column title="Estabelecimento" style="width:15%; background: #C7101A">
			<font color='white' size='2,5'>${tabela.estabelecimento.getNome()}</font>
		</display:column>
	</c:if>
	<c:if test="${tabela.statusPedido.getId() > 3}">
		<display:column title="Estabelecimento" style="width:15%; background: #FFF200">
			<font size='2,5'>${tabela.estabelecimento.getNome()}</font>
		</display:column>
	</c:if>
</display:table>

reparem que é um if bem simples, mas na hora de mostrar na tela , o que aparece é:

models.Estabelecimento@140fee
models.Estabelecimento@83d8be
models.Estabelecimento@1e536d6
etc…

gostaria de saber o que pode estar errado. E ah, esse problema só começou depois que eu tentei passei a usar o Tomcat 6, antes usava o 7 e funcionava perfeitamente.
Se alguém puder dar qualquer dica ficarei MUITO agradecido.!!!

5 Respostas

surfzera

no primeiro if já ta faltando " " , mais o problema não é esse.

<c:if test="${tabela.statusPedido.getId() < 3 }">  
        <display:column title="Estabelecimento" style="width:15%; background: #1E9B43">  
            <font color='white' size='2,5'>${tabela.estabelecimento.getNome()}</font>  
        </display:column>
B

Surfzera, eu acho que tava faltando a seguinte diretiva:

<%@ page isELIgnored="false" %>

eu coloquei ela, mas agora aparece o seguinte erro:

The function getId must be used with a prefix when a default namespace is not specified

henriqueluz

Você tá referenciando errado na EL

Use assim:
tabela.statusPedido.id
tabela.estabelecimento.nome

Supondo que você já tenha os métodos gets dessas propriedades.

Abs,

surfzera

é isso mesmo que o amigo falo… passo ate despercebido

B

realmente deu certinho :slight_smile:
muito obrigado Riqueluz e Surfzera!!

Criado 21 de julho de 2011
Ultima resposta 21 de jul. de 2011
Respostas 5
Participantes 3