tava querendo fazer uma comparacao, tipo se o campo abaixob[/b] for maior que 20 ele exibi uma imagem na tela(coisa simples), mas nao consegui fazer a comparacao usando o if…
Ñ creio q essa ñ seja a melhor solução. Apenas pq vc tem uma comparação ñ significa q isso seja lógica da aplicação. View tb tem lógica de apresentação. É responsábilidade da view decidir se algum componente deve ou ser renderizado. Modularizar é extremamente importante, mas modularizar em excesso tb ñ é uma boa estratégia. Isso pode levar um código muito grande e ilegivel, difícil e caro de manter.
Mas o q vc está usando no <c:if> é a EL “nativa” do JSF (até pq ñ existe EL ñ nativa). Segundo a spec > é um operador válido da EL e se ñ está funcionando então o erro está em outro ponto. Vc tb pode substituir o > por gt se vc preferir.
Você quer colocar uma condição para exibir determinado valor ou quer esconder determinado componente?
Se quiser exibir:
//Se a nota do aluno for menor que 2 e a turma do aluno for igual a 3, será exibido 3, senão aluno01.nota.
<h:outputText value="#{aluno01.nota < 2 and aluno01.turma == 3 ? 3 : aluno01.nota}" />
Se quiser esconder:
//Se a nota do aluno for menor que 2 e a turma do aluno for igual a 3 o componente será exibido.
<h:outputText value="Aqui é a mensagem que será exibida!" rendered="#{aluno01.nota < 2 and aluno01.turma == 3}">