[Resolvido!] Dificuldade em pegar data de ultimo acesso de usuário

Olá Gujeiros, bom dia.

Meu sistema possui uma tabela de registro de acessos dos usuários, que armazena o id do registro, id do usuario, data, hora inicial, hora saida e o tempo logado.

Preciso simplesmente exibir em um panel no sistema com os dados do usuario logado e nome da instituicao (pontos vencidos). O que falta agora, é exibir a data do último acesso do usuário, onde estou tendo o problema.

Meu método está assim:

[code] public String getExibirUltimaVisita() {

	String pegaUsuario = loginDAO.getUser(sessionHttp.getAttribute("usuarioLogado").toString());
	System.out.println("valor pegaUsuario: " + pegaUsuario);
	Long id;
	String nomePF = null;
	String dia = null;

	List<RegistroAcessos> lista = new ArrayList<RegistroAcessos>();
	RegistrosHandler register = pegaRegistro();

	for (Login user : getListaUsuarios()) {
		if (pegaUsuario.equals(user.getUsuario())) {
			id = user.getCodLogin();
			for (RegistroAcessos reg : register.getListaRegistros()){        //ESTA É A LINHA DO ERRO. RETORNA NULL NO CONSOLE
				if (id.equals(reg.getUsuario().getCodLogin())){
					lista.add(new RegistroAcessos());
					lista = (List<RegistroAcessos>) lista.get(lista.size()-1);
					for (RegistroAcessos r : lista) {
						if (id.equals(r.getUsuario().getCodLogin())){
							dia = r.getData().toString();
							nomePF = "Seu ultimo acesso foi em " + dia;
							System.out.println("Seu ultimo acesso foi em " + dia);
							
						}
					}

				}
			}
		}
	}
	return nomePF;
} [/code]

Consigo gravar tranquilamente todas as informações na tabela de registro de acessos, porém, ao chamar a lista do bean, a mesma retorna nulo. No bean, o método de lista está assim:

public List<RegistroAcessos> getListaRegistros() { System.out.println("Carregando os cargos ..."); Session session = HibernateUtil.currentSession(); Dao<RegistroAcessos> dao = new Dao<RegistroAcessos>(session, RegistroAcessos.class); List<RegistroAcessos> list = dao.list(); Collections.sort(list, registro); return list; }

Alguma solução? sei que deve ser alguma besteira que ainda não notei…

Agradeço a colaboração.

up!

Eae gujeiros?? Ninguem se manifesta??

Você está lançado um laço for em um arquivo que não é list?

Obrigado por responder, andre.

Estou fazendo um for em um arquivo list sim, o problema agora (depois de realizar muitos testes) é adicionar os valores encontrados no for em outra list<> (no caso, em outra List.

Resumindo, preciso criar uma lista apenas com registros que possuam aquele login(login_fk) e dessa lista, pegar o ultimo registro inserido.

Tire o breakpoint do primeiro método e adicione um breakpoint no primeiro Sop dessa classe e veja em que momento ele não está fornecendo o que deveria:

debugando o codigo é claro

public List<RegistroAcessos> getListaRegistros() {  
    System.out.println("Carregando os cargos ...");  //breakpoint aqui
    Session session = HibernateUtil.currentSession();  
    Dao<RegistroAcessos> dao = new Dao<RegistroAcessos>(session, RegistroAcessos.class);  
    List<RegistroAcessos> list = dao.list();  
    Collections.sort(list, registro);  
    return list;  
}  

Obrigado andré pela ajuda.

Consegui resolver o problema. Estava com dificuldades em criar uma lista com objetos do selectItem, mas com a ajuda dos Sop, consegui identificar e resolver.