Comportamento estranho de um botao commandLink

8 respostas
F

Pessoal,

Estamos estudando um site de vendas, e esta acontecendo uma situacao da seguinte forma:

O Cliente faz uma compra normal, enche o carrinho e finaliza a compra. Ok.
Problema

Quando voce escolhe um item para adicionar ao carrinho e depois coloca a cidade que voce mora, ele te da o valor da entrega, o botao só habilita apos voce colocar estes dados.

Acontece que se eu fizer uma compra finalizar e depois eu digitar o site novamente e começar a comprar outra coisa, quando chega nesta parte do calculo(botao) ele nao habilita mais.

Só funciona se eu fechar o navegador e abrir de novo. Ao que me parece, deve ser algo relacionado a sessao, mas desta forma, se a sessao esta sendo guardada, entao os itens do carrinho tambem deveriam estar la, nao !?

O problema todo é o comportamento do Botao no CommandLink como disse…

Voces tem alguma ideia do que possa estar ocorrendo?

Abraço

8 Respostas

C

Fabio,

post o código da backbean e qual o atributo que está referenciando para alterar o estado do botão.

Abç

F

Valeu pela resposta, entao,

Este é o trecho do botão:

..
   <h:graphicImage id="fecharCompraButtonDesab" url="parana/img/fechar_carrinho_off.jpg" rendered="#{!carrinhoBean.podeFecharCompra}"/>
                <h:commandLink id="fecharCompraButton" title="Fechar Compra" action="#{carrinhoBean.fecharCompra}" rendered="#{carrinhoBean.podeFecharCompra}">
          <h:graphicImage id="imgFecharCompraButton" url="parana/img/fechar_carrinho.jpg" "/>
                </h:commandLink>

				<h:panelGrid id="panelAcoesCarrinhoVazio" columns="1" rendered="#{empty carrinhoBean.compraFinal.itemCompraCollection}" width="100%">
                       <h:outputLink  id="linkAcoesCarrinhoVazio" value="index.jsf" title="Iniciar Compra">
          <h:graphicImage id="imgLinkAcoesCarrinhoVazio" url="parana/img/bt_iniciar_compra.jpg" />
                 	    </h:outputLink>
          </h:panelGrid>
..
C

Fabio

Scope de seu backbean é session?

F

Esta sim…

A

Nao sei se cabe na sua situacao, mas da uma pesquisada : session.invalidate();

F

adamastor.pa,

Tentei usar, mas este problema continua.

F

ninguem mais pessoal?

R

Provavelmente o prob.eh o escopo de sessão mesmo.

Vc pode tentar colocar o bean em escopo de request e usar o a4j:keepAlive

Criado 25 de março de 2011
Ultima resposta 29 de mar. de 2011
Respostas 8
Participantes 4