Login em jsf

4 respostas
L

Bom dia,tenho uma classe que faz o login e valida no banco meu bean usuario esta com escopo sessao,apos o login bem sucedido o usuario é redirecionado para o menu onde algumas opcoes sao habilitadas ou desabilitadas de acordo com o perfil do usuario,como eu faço para qdo a pagina de menu abrir eu tenha acesso ao objeto usuario?

<rich:menuItem  submitMode="ajax" value="#{msg.formapagamento}"  action="MFPagamento"                disabled="#{usuario.usuario.perfilid.pcad}"/>

Isto é possivel?Como?
Abraços.

4 Respostas

Javabuntu

cara eu não entendi bem o que vc quer… mas se o usuario ta com scope session, ele já está na sessão…e pode usar ele normalmente…

agora voce quer é usar em um backing bean este usuário que está na sessão, seria isso?

L

Isso mesmo caro colega tenho varias paginas onde este usuario que foi utilizado no login sera necessario,uma delas é o proprio menu onde pego os dados do usuario para habilitar e desabilitar opcoes do menu,vc sabe como posso fazer isso?

Javabuntu

bem em JSF isso é mais simples do que você imagina…

imaginemos que sua classe se chama Usuario e declarou assim no faces-config:

<managed-bean>
        <managed-bean-name>usuario</managed-bean-name>
        <managed-bean-class>seuPacote.Usuario</managed-bean-class>
        <managed-bean-scope>SESSION</managed-bean-scope>
    </managed-bean>

se voce tiver dentro outra classe java e precisa deste usuario que está na sessão você recupera assim:

Usuario novo  = new Usuario();
novo = (Usuario) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("usuario")); // este "usuario" é o name do seu bean declarado no faces

agora se você está na próxima página após o login, basta usar o usuário que está na sessão… de qualquer página…

.... value="#{usuario.nome}"
L

Blz cara obrigado pela ajuda funcionou perfeitamente.

Criado 13 de maio de 2008
Ultima resposta 13 de mai. de 2008
Respostas 4
Participantes 2