JSF - Dúvida Básica

7 respostas
F

Saudações;

desenvolvi uma página em JSP (http://localhost:8080/metamti/faces/index.jsp) a qual solicita ao usuário o login e senha. Após clicar em um h:commandButton é direcionado para outra página (welcome.jsp).

Acontece que se o usuário digitar no browser o endereço: http://localhost:8080/metamti/faces/welcome.jsp

Ele entra na página sem se logar, ou seja, pula a página index.jsp.

Como resolver isso?

PS: Como puderam notar, estou gatinhando ainda e espero (com a ajuda dos amigos) logo poder dar meus primeiros passos firmes!

Agradeço antecipadamente;

Marco A.

7 Respostas

felipeguerra

Euvou implementar isso na minha app tb!

Seguinte, se alguém vai se logar, é interessante deixá-lo na sessão para que se o indivíduo tentar acessar suas páginas diretamente, vc tem como verificar se o usuário já está logado!

Um exemplo tosco:

public class Usuario {
 private String login;
 private String senha;

 //getters e setters

}

Na sua página vc pode fazer assim:

<c:if value=${sessionScope.usuario!=null}>
Exibe a página
</c:if>

Muito ruim o exemplo?

marcioa1

Acho a ideia de coloca o usuario na sessão boa, mas acho que o teste deve ser feito no managedBean, no método do clique do botão, e não na página.

Márcio

afamorim

Ou ate mesmo num filtro que ja valide todas as paginas verificando se o mesmo esta logado para poder trafegar naquelas páginas.

Asim você ganha o poder de determinar quais paginas serã alcançadas por esse filtro.

como se as da raizes fossem livres e as de /admin obrigasse o sujeito estar logado.

felipeguerra

afamorim:
Ou ate mesmo num filtro que ja valide todas as paginas verificando se o mesmo esta logado para poder trafegar naquelas páginas.

Asim você ganha o poder de determinar quais paginas serã alcançadas por esse filtro.

como se as da raizes fossem livres e as de /admin obrigasse o sujeito estar logado.

É verdade, eu já tenho um filter que não permite acessar outra extensão que não seja .jsf, daria para agregar outro método.

Marky.Vasconcelos

afamorim:
Ou ate mesmo num filtro que ja valide todas as paginas verificando se o mesmo esta logado para poder trafegar naquelas páginas.

Asim você ganha o poder de determinar quais paginas serã alcançadas por esse filtro.

como se as da raizes fossem livres e as de /admin obrigasse o sujeito estar logado.

Cara eu tava pensando nessa ideia para não deixar os usuarios acessarem paginas que não são do seu nivel (admin, user,etc)

Tem como dar um exemplo?

F

Pessoal;

Obrigado pelas respostas, mas perdoando minha ignorância, poderiam dar algum exemplo mais prático. Um pedaço do código me auxiliaria. Estou começando a programar Java, iniciante mesmo, o que fiz até o momento foi lendo porisso de minha dificuldade em assimilar alguns conceitos e termos!

Mais uma vez agradeço!

Marco A.

Leozin

por que tu não utiliza segurança? security-constraint e afins?

Criado 21 de dezembro de 2007
Ultima resposta 21 de dez. de 2007
Respostas 7
Participantes 6