Consulta

1 resposta
pitiko

Estou fazendo a seguinte consulta em HQL:

public Iterator consultaGrafico() {
        return getSession().createQuery("select sum(valor), numero_agencia from Emprestimo, Conta where Emprestimo.numero_conta = Conta.numero_conta group by numero_agencia").list().iterator();
}

E estou recebendo ela da seguinte maneira:

Session session = NewHibernateUtil.getSessionFactory().openSession();
        Iterator i = contaDAO.consultaGrafico();
        while (i.hasNext()) {
            Object[] teste = (Object[]) i.next();
            System.out.print(teste[1]);
            data.setValue("teste", 56.9);
        }
        session.close();
[code]

 que ele retorna o seguinte errado:

[code]
27/06/2011 23:04:44 org.hibernate.hql.ast.ErrorCounter reportError
SEVERE:  Invalid path: 'null.numero_conta'
27/06/2011 23:04:44 org.hibernate.hql.ast.ErrorCounter reportError
SEVERE: <AST>:0:0: unexpected end of subtree
27/06/2011 23:04:44 org.hibernate.hql.ast.ErrorCounter reportError
SEVERE:  left-hand operand of a binary operator was null
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

Obrigado

1 Resposta

EHS

Pelo que entendi do erro está dando null no numero_conta, não entendo muito ainda sobre hql, mas eu sempre testo a consulta antes de fazer, para isso é só clicar com o botão direito em cima da classe hibernate.cfg, acho que é essa a classe, mas enfim aquela classe que o hibernate cria sozinho, daí ali vai ter uma opção para vc testar os códigos hql. Mais uma coisa vc não precisa do select como no sql, tenta dar uma pesquisada sobre hql, precisa apenas do from.
Tenta dar uma olhada na documentção deve te ajudar http://universofaces.wordpress.com/2008/10/17/documentacao-do-hibernate-portugues-br/

Criado 27 de junho de 2011
Ultima resposta 28 de jun. de 2011
Respostas 1
Participantes 2