Não redireciona pagina com botao ajax

6 respostas
mateusprado

Pessoal, em uma pagina jsf nao estou conseguindo fazer redirecionamento com aj4:commandButton. com h:commandButton ele redireciona normal apos o login, ou erro, etc.
A ação é realizada, pois no console ele executa o login normalmente, mas nao redireciona.
alguem saberia me dizer oq pode ser?

abraços,

6 Respostas

bueno

O h:commandButton regarrega a página, como ele vai recarregar a página ele consegue fazer o redirecionamento.

O aj4:commandButton é ajax, ele não recarrega a página, porem vc pode obter um resultado igual acrescentando o atributo oncomplete e colocando um javascript para fazer o redirecionamento

mateusprado

ola bueno, desde já agradeco sua atenção.

vc pode me ajudar entao?

esse é meu button:

<h:commandButton
								image="IMG/LAYOUT/NFE2_09.jpg" action="#{loginManager.logar}">
							</h:commandButton>

a finalidade de usar o a4j:commandButton é para boter criar um status, um gif enquanto estiver fazendo o login até redirecionar principal.

obrigado e abraços.

bueno

usando a4j:commandButton seria facil:

<a4j:status id="indicator"> <f:facet name="start"> <h:graphicImage value="/images/indicator.gif"/> </f:facet> </a4j:status>

assim ele mostraria a imagem indicador.gif a cada request ajax.

com o h:commandButton o jeito é acrescentar um atributo onclick e mostrar a imagem escondida com um javascript, pois o h:commandButton funciona exatamente igual ao botão submit do html

mateusprado

ok até ai tranquilo. ja tenho status com facet start e o a4j:commandButton, mas quando faço o login ele nao redireciona. executa td certinho no console, e aimagem fica rodando la entendeu. me ajude por favor usando o oncomplete que vc citou antes. seria isso?

obrigado.

bueno

Vamos lá :slight_smile:

<a4j:commandButton
image=“IMG/LAYOUT/NFE2_09.jpg”
action="#{loginManager.logar}"
oncomplete=“self.location=‘pagina_logado.jsp’;”
/>

bueno

vale lembrar que o oncomplete sempre vai ser executado ao completar a requisição ajax, o login pode dar errado então verifique se teve alguma mensagem de erro antes de redirecionar

Criado 30 de junho de 2008
Ultima resposta 1 de jul. de 2008
Respostas 6
Participantes 2