public String logout() {
    HttpSession session;

    FacesContext ctx = FacesContext.getCurrentInstance();
    session = (HttpSession) ctx.getExternalContext().getSession(false);
    session.setAttribute("usuarioAutenticado", null);

    // AppendLog("Logout");
    Enumeration<String> vals = session.getAttributeNames();

    while (vals.hasMoreElements()) {
      session.removeAttribute(vals.nextElement());
    }

    // Adicionando logOut saída no sistema
    LogAcesso log = new LogAcesso();
    log.setTipo(2);
    // log.setUsuario(usuario);

    daoLogAcesso.Salvar(log);

    return "login.xhtml";
  }
  public String validar() {
    try {
      usuario = dao.porLogin(login);

      if (usuario == null) {
        exibirMensagem("Login ou senha não Correspondem");
        return "login.xhtml";
      } else {
        if (senha.equals(usuario.getSenha())) {

          HttpSession session;

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

          // Adicionando logIn entrada no sistema
          LogAcesso log = new LogAcesso();
          log.setTipo(1);
          // log.setUsuario(usuario);

          daoLogAcesso.Salvar(log);

          // AppendLog("Login");
          return "index.xhtml";
        } else {
          exibirMensagem("Login ou senha não correspondem");
          return "login.xhtml";
        }
      }
    } catch (Exception ex) {
      // ex.printStackTrace();
      exibirMensagem(ex.getMessage());

      return "login.xhtml";
    }
  }