1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Como recuperar a sessão do Usuário

Pessoa boa noite, Estou tentando recuperar a sessão de um usuário e não consigo.

Tenho uma classe UsuárioSistema que identifica qual é o usuário. Pessoa boa noite, Estou tentando recuperar a sessão de um usuário e não consigo.

Tenho uma classe UsuárioSistema que identifica qual é o usuário.

@ManagedBean(name = "usuarioLogado")
@SessionScoped
public class UsuarioSistema extends User implements Serializable {

    private static final long serialVersionUID = 1L;


    private Usuario usuario;

    public UsuarioSistema(Usuario usuario, Collection<? extends GrantedAuthority> authorities) {
        super(usuario.getEmail(), usuario.getSenha(), authorities);
        this.usuario = usuario;

        FacesContext fc = FacesContext.getCurrentInstance();
        HttpSession session = (HttpSession) fc.getExternalContext().getSession(false);
        session.setAttribute("usuarioLogado", usuario);

    }


    public Usuario getUsuario() {
        return usuario;
    }

}

E em uma bean, precisamente na hora de gerar um método não consigo recuperar essa session do usuário.

@Named
@ViewScoped
public class GerarSimuladoBean implements Serializable {

    private static final long serialVersionUID = 1L;

        private HttpServletRequest HttpServletRequest;

    HttpServletRequest req = (HttpServletRequest); 

public void gerarSimulado() {
        this.questoes = simuladoFiltroDAO.geraSimuladoPorFiltro(
                cursoSelecionado.getCodigo(), this.complexidadeSelecionada,
                this.numeroDeQuestoesSimulado);

        HttpSession session = (HttpSession) req.getSession();
        Usuario usuario = (Usuario) session.getAttribute("usuarioLogado");
      }
}

Alguém pode me dizer o que diabos eu tou fazendo de errado? Vlw.

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

2 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags java java-ee spring-security session sql jpa primefaces controller ou faça a sua própria pergunta.