Caros, possuo o seguinte método:
[code]@SuppressWarnings(“unchecked”)
public List ListarPorChave(String chave) {
System.out.println(chave);
Usuario usuario = new UsuarioDao().buscarPorId(chave);
Query query = s.createQuery("from Demanda d where d.Usuario = :user");
query.setParameter("user", usuario);
List<Demanda> lista = query.list();
if (lista.size() == 0){
return null;
}
return lista;
}[/code]
Quando rodo este código dá o seguinte erro:
SEVERE: Servlet.service() for servlet default threw exception
org.hibernate.QueryException: could not resolve property: Usuario of: bean.Demanda [from bean.Demanda d where d.Usuario = :user]
É o seguinte, eu possuo a classe Demanda e classe Usuário, as duas mapeadas em Beans diferentes, no entanto dentro da classe Demanda, a classe Usuário é chamada da seguinte forma:
@OneToOne(fetch = FetchType.EAGER)
@JoinColumn(name="usuario_us_chave")
private Usuario usuario;
E seus Gets e Sets normais funcionando perfeitamente.
Tentei também o seguinte código:
[code] @SuppressWarnings(“unchecked”)
public List ListarPorChave(String chave) {
System.out.println(chave);
//Usuario usuario = new UsuarioDao().buscarPorId(chave);
Query query = s.createQuery("from Demanda d where d.usuario_us_chave = :user");
query.setParameter("user", chave);
List<Demanda> lista = query.list();
if (lista.size() == 0){
return null;
}
return lista;[/code]
Aí dá o seguinte erro:
SEVERE: Servlet.service() for servlet default threw exception
org.hibernate.QueryException: could not resolve property: usuario_us_chave of: bean.Demanda [from bean.Demanda d where d.usuario_us_chave = :user]
Enfim… Não consigo fazer isso funcionar… Acho que é questão de mapeamento entre as classes, mas não sei como resolver…
Alguém pode me ajudar?? Agradeço imensamente!