Estou com problemas nas regras de navegação de um projeto que estou fazendo um jsf
estou navegando nas seguintes paginas:
pagina_principal.jsp > introducao_ex_1.jsp > exercicio_1_sel_img.jsp > exercicio_1_img_1.jsp
porem quando estou na pagina exercicio_1_img_1.jsp e clico com o botao voltar do browser,
volta para a pagina pagina_principal.jsp e não para a pagina exercicio_1_sel_img.jsp(que é a pagina anterior).
Eu fiz tudo pelo modo grafico no faces-config, e percebi que independente de qualquer
pagina que estou no brower sempre aparece referenciando a pagina principal,
mesmo se eu estiver em exercicio_1_img_1.jsp no browser aparece: http://localhost:8080/teste/pagina_principal.jsf .
Alguem pode me ajudar ?
Como vc está usando para navegar entre as páginas, tipo, não está mapeando um Bean? Normalmente no faces-config.xml teríamos uma parte mais ou menos assim:
Vc tem muitos ManagedBeans. Porque não usa um só para controlar a navegação?
Bem mesmo assim não achei nada errado no faces-config.xml. Aparecer o nome da primeira página no browser é normal (só aparece a outra URL se vc configurar para redirecionar, mas assim não executa a lógica do bean).
Você está usando qual browser? Já tentou com outro? já olhou também se em algum dos seus Beans vc não está limpando a sessão? ex:
eu não estou limpando a sessao nos meus MB, sera que é por causa disso?
eu estou testando com o firefox, provavelmente é o navegador que o cliente vai usar…
o botão voltar esta somente um uma das telas, para voltar no restante das telas eu estava contando
com o voltar do browser :S.
Será que se eu configurar para mostrar o nome da cada pagina que navegar no
browser ao invés de ficar sempre como pagina principal resolve?
Limpar a sessão seria somente para voltar ao início com o mesmo Bean, só que sem valores armazenados! O que vc pode tentar também é colocar os Beans com escopo request e fazer o teste.
Eu tenho uma aplicação aqui que não apresenta este problema, inclusive com firefox. Quando clico tanto no voltar do browser quanto no botão voltar, volta página por página. Faz um teste com outro browser também.
Pelo que entendi vc tem 4 Beans, um inicializa em cada página?
Teria como vc colocar o código de algumas das páginas? por exemplo, das duas últimas exercicio_1_sel_img.jsp e exercicio_1_img_1.jsp
funcionou!!! obrigada
mas em outros sistemas que eu fiz, não me lembro de ter que colocar a tag redirect…
pode me explicar pq tive que colocar nesse?
obrigada
Colocando o redirect você só estará afirmando que ao ser executado uma regra de navegação
a mesma deverá ser redirecionada… Diferente de quando você usa as requisições em ajax(assincrona).
E como o link citado pelo vinnysoft, se você usar o redirect perderar seus dados. O que direfe o forward.