Como usar JSTL ou EL com JSF2.0?

4 respostas
marcioguj

Olá todos,

Estou usando JSF2.0 com PrimeFaces, e quero ocultar um botão, quando uso o rendered so funciona  se o valor  que vem do ManageBean e 'false' se for 'true' não funciona.
Ja tentei usar o JSTL mas não funciona:
<c:if test="${redePessoaJuridicaMB.redePessoaJuridica.status == true}"></c:if>//não funciona 

me recomendaram usar:  xmlns:c="http://java.sun.com/jsp/jstl/core">

Ja tentei com o rendered:

<p:commandButton value="${msgs.rede_pessoa_juridica_botao_ativar}"
rendered="#{redePessoaJuridicaMB.redePessoaJuridica.status == true}" //se for true não funciona, com false funciona
 action="#{redePessoaJuridicaMB.pesquisar}" />

4 Respostas

Hebert_Coelho

muito estranho nao funcionar.

Tenta assim:

redePessoaJuridicaMB.redePessoaJuridica.status eq true

Ou então cria um método no redePessoaJuridicaMB.exibirBotaoAtivar onde retorna um boolean com true ou false.

marcioguj

Ja tentei com:

redePessoaJuridicaMB.redePessoaJuridica.status eq true

Vou seguir a recomendação do metodo redePessoaJuridicaMB.exibirBotaoAtivar. Valeu

M

marcioguj:
Olá todos,

Estou usando JSF2.0 com PrimeFaces, e quero ocultar um botão, quando uso o rendered so funciona  se o valor  que vem do ManageBean e 'false' se for 'true' não funciona.
Ja tentei usar o JSTL mas não funciona:
<c:if test="${redePessoaJuridicaMB.redePessoaJuridica.status == true}"></c:if>//não funciona 

me recomendaram usar:  xmlns:c="http://java.sun.com/jsp/jstl/core">

Ja tentei com o rendered:

<p:commandButton value="${msgs.rede_pessoa_juridica_botao_ativar}"
rendered="#{redePessoaJuridicaMB.redePessoaJuridica.status == true}" //se for true não funciona, com false funciona
 action="#{redePessoaJuridicaMB.pesquisar}" />
</blockquote>

Assim funcionará:

<p:commandButton value="#{msgs.rede_pessoa_juridica_botao_ativar}" rendered="#{redePessoaJuridicaMB.redePessoaJuridica.status}"
action="#redePessoaJuridicaMB.pesquisar}" />

Caso vc queira negar(false) então você deverá colocar ex: rendered="#{!redePessoaJuridicaMB.redePessoaJuridica.status}" exclamação na frente!!!

Abraço!

drsmachado

Mosiah Vuxs:
marcioguj:
Olá todos,

Estou usando JSF2.0 com PrimeFaces, e quero ocultar um botão, quando uso o rendered so funciona  se o valor  que vem do ManageBean e 'false' se for 'true' não funciona.
Ja tentei usar o JSTL mas não funciona:
<c:if test="${redePessoaJuridicaMB.redePessoaJuridica.status == true}"></c:if>//não funciona 

me recomendaram usar:  xmlns:c="http://java.sun.com/jsp/jstl/core">

Ja tentei com o rendered:

<p:commandButton value="${msgs.rede_pessoa_juridica_botao_ativar}"
rendered="#{redePessoaJuridicaMB.redePessoaJuridica.status == true}" //se for true não funciona, com false funciona
 action="#{redePessoaJuridicaMB.pesquisar}" />
</blockquote>

Assim funcionará:

<p:commandButton value="#{msgs.rede_pessoa_juridica_botao_ativar}" rendered="#{redePessoaJuridicaMB.redePessoaJuridica.status}"
action="#redePessoaJuridicaMB.pesquisar}" />

Caso vc queira negar(false) então você deverá colocar ex: rendered="#{!redePessoaJuridicaMB.redePessoaJuridica.status}" exclamação na frente!!!

Abraço!

rendered="#{!redePessoaJuridicaMB.redePessoaJuridica.status}"
Lembre-se, o operador “!” inverte o valor lógico presente/retornado em um atributo/método.
Por isso, o trecho de código acima, como dito pelo Mosiah irá funcionar com certeza.

Criado 15 de dezembro de 2011
Ultima resposta 15 de dez. de 2011
Respostas 4
Participantes 4