Vraptor - Como faço para obter o Usuario logado e colocá-lo como parâmetro numa query?

1 resposta
R

Boa tarde, tô usando o vraptor. Como faço para obter o usuário logado e usá-lo como parâmetro numa query. Quero listar os albuns do usuario logado.
Meu problema é que não consigo fazer o objeto do usuario logado chegar como argumento na chamada do metodo buscaAlbumUsuario. Já usei o debug e o valor realmente não chega. Sei que é um tópico simplista esse, mas se alguém puder me ajudar.
Tô com essa query aqui na minha classe AlbumDao.

@SuppressWarnings("unchecked")
 	public List<Album> buscaAlbumUsuario(String name){
 		Query query = getSession().createQuery("select a from Album as a where a.usuario.name =:name ");
 		query.setParameter("name", name);
 		return query.list();
 		
 		
 		
 	}

E na minha logic estou usando esse método!!

public void listaAlbuns(String name) {
 		
 		AlbumDao dao = this.daoFactory.getAlbumDao();
 		
 		this.albuns = dao.buscaAlbumUsuario(usuario.getName());
 		
 	}

Só para esclarecer, quando digito a string com nome do usuario nessa chamada do metodo como teste, como no exemplo abaixo, é listado normalmente os albuns desse usuario.

this.albuns = dao.buscaAlbumUsuario("jose");

Obrigado, agradeço qualquer ajuda.

1 Resposta

R

Resolvido.

Na logic que se quer capturar a sessão é só usar.

@In(scope=ScopeType.SESSION, required = false)
private Usuario usuario;

Obrigado pela atenção.

Criado 24 de novembro de 2008
Ultima resposta 25 de nov. de 2008
Respostas 1
Participantes 1