[Resolvido] Netbeans com Hibernate + JasperReport com conexao JDBC

6 respostas
J

Bom dia pessoal.

Possuo um projeto com o uso do Hibernate.

Porém agora comecei a desenvolver relatórios com o JasperReport e estou com sérios problemas para criar uma Hibernation Connection.

Para conseguir terminar meu trabalho a tempo (o prazo ta curto) pensei em criar uma conexao JDBC mesmo no JasperReport.
Então criei um relatorio pelo Jasper utilizando conexao JDCB, funcionou perfeitamente, dei o preview e apareceu tudo lá…

Então tentei fazer minha aplicacao que utiliza Hibernate, interagir com esse relatorio feito com conexao JDCB. Tenho como fazer isso? É possivel?

Pois no momento que executo o relatorio pela Netbeans ele abre o relatorio vazio…

Agradeço qualquer ajuda.

Obrigado.

6 Respostas

K

Da uma lida nesse tutorial,

http://www.franciscosouza.com.br/2009/07/22/jasperreports-com-jrbeancollectiondatasource/

mosta um jeito diferente e um pouco mais facil ( pelo menos eu acho ).

R

O objeto Session do Hibernate pode lhe prover uma conexão JDBC:

http://docs.jboss.org/hibernate/stable/core/api/org/hibernate/Session.html#connection()

J

roger_rf:
O objeto Session do Hibernate pode lhe prover uma conexão JDBC:

http://docs.jboss.org/hibernate/stable/core/api/org/hibernate/Session.html#connection()

Boa tarde Roger.

Tentei utilizar esse método mas ele aparece como Deprecate.
Sabe me dizer como posso utiliza-lo?

Dessa forma eu conseguiria pegar a conexao da sessao do hibernate e depois utilizar ao chamar o relatorio? que foi criado com conexao JDBC… ??

Obrigado!!

R

Esse método retorna uma conexão JDBC que você pode passar ao JasperReports. O método está marcado como @Deprecated, o que indica que será removido do Hibernate em versões futuras, mas isso não que dizer que você não possa usá-lo.

Se você não quiser usar esse método, use Session.doWork(), que também provê uma Connection:

session.doWork(new Work() {
  public void execute(Connection connection) {
    // ... execute seu relatório aqui ...
  }
});
J

roger_rf:
Esse método retorna uma conexão JDBC que você pode passar ao JasperReports. O método está marcado como @Deprecated, o que indica que será removido do Hibernate em versões futuras, mas isso não que dizer que você não possa usá-lo.

Se você não quiser usar esse método, use Session.doWork(), que também provê uma Connection:

session.doWork(new Work() {
  public void execute(Connection connection) {
    // ... execute seu relatório aqui ...
  }
});

Valeu Roger, funcionou certinho!!

Só não sei pq o relatorio ta abrindo por tras do meu Dialog…

Mas funcionou… show!!

javer

de onde veio esse “session”?

Criado 10 de junho de 2010
Ultima resposta 17 de out. de 2014
Respostas 6
Participantes 4