Problemas ao retornar valores

Olá pessoal!

Estou com um probleminha aqui !

Em minha aplicação quando faço login com uma conta normal ele faz o select verificando e me retorna o objeto se ele existir no banco, depois se eu fizer logout desta conta entrar com uma de administrador e bloquear o outro usuário que eu havia entrado ou fazer alguma alteração nele, quando faço login nele novamente ele me retorna o mesmo objeto que fiz o login pela primeira vez não mostrando as alterações, as alterações são visíveis no banco e só fica normal na aplicação quando reinicio o Tomcat e o Hibernate levanta de novo.

aqui está o código de busca do login:

[code]public class LoginDAO extends AbstractDAO {

EntityManager em =  getEMF().createEntityManager();

@SuppressWarnings("unchecked")
public UsuarioDTO getLogin(String email, String senha) {

	em.getTransaction().begin();

	ArrayList<UsuarioDTO> usuarios = new ArrayList<UsuarioDTO>(em.createQuery("from UsuarioDTO u where u.email = '" + email	+ "' and u.senha = md5('" + senha + "')").getResultList());

	em.getTransaction().commit();
	UsuarioDTO usuario = new UsuarioDTO();

	if (usuarios.size() == 1) {
		Long id = usuarios.get(0).getId();
		usuario = em.find(UsuarioDTO.class, id);
		
		usuario.setLoggedIn(true);
	}
	return usuario;
}

}
[/code]

Vocês sabem o que poderia estar acontecendo ou alguma maneira de eu fazer com que ele pegue novamente o objeto com as alterações sem ter que reiniciar o Tomcat?

Obrigado!
Leonardo Terrão.

o hibernate esta gravando no cache dele, vc pode desabilitar ou dar um clear nele.

[]'s

mauricioadl muito obrigado!

consegui aqui !

adicionei

antes de iniciar a transação.

[code]…
EntityManager em = getEMF().createEntityManager();

@SuppressWarnings("unchecked")
public UsuarioDTO getLogin(String email, String senha) {

	em.clear();
	em.getTransaction().begin();

	ArrayList<UsuarioDTO> usuarios = new ArrayList<UsuarioDTO>(em.createQuery("from UsuarioDTO u where u.email = '" + email	+ "' and u.senha = md5('" + senha + "')").getResultList());

	em.getTransaction().commit();


[/code]

Obrigado !