Preciso pegar a conexão do hibernate para carregar um relatório só que o método que eu tentei usar fica subrescrito e retorna null, qual é a forma correta de ser fazer isso?
estou fazendo assim:
try {
String jasperPrint = JasperFillManager.fillReportToFile(caminho+ "\\reports\\clientes.jasper", null, sessao.connection());
JasperViewer viewer = new JasperViewer(jasperPrint, false, false);
viewer.setExtendedState(JasperViewer.MAXIMIZED_BOTH);//maximizado
viewer.setTitle("Relatório de Clientes");//titulo do relatório
viewer.setVisible(true);
} catch (JRException erro){
erro.printStackTrace();
}
Opa cara obrigado pela dica
mas na minha variavel Session eu coloquei o .doWork mas não existe. fica sublinhado de vermelhor mesmo depois de fazer alguns import esse doWork é de session mesmo?
try {
sessao.doWork(new Work() {
public void execute(Connection connection){
String jasperPrint = JasperFillManager.fillReportToFile(caminho+ "\\reports\\clientes.jasper", null, connection);
JasperViewer viewer = new JasperViewer(jasperPrint, false, false);
viewer.setExtendedState(JasperViewer.MAXIMIZED_BOTH);//maximizado
viewer.setTitle("Relatório de Clientes");//titulo do relatório
viewer.setVisible(true);
}
});
} catch (JRException erro){
erro.printStackTrace();
}
mas por algum motivo meu hibernate não localica o doWork()
eu ultilizo o hibernate 3 é a versão usada no assistente do netbeans, vou baixar direto do site pra ver no que da.
Realmente era a verão perguei outra versão 3 só que a mais recente, e agora funcionou só que retornou este erro:
Exception in thread "AWT-EventQueue-0" java.lang.NoSuchFieldError: BOOLEAN
at net.sf.jasperreports.engine.query.JRHibernateQueryExecuter.<clinit>(JRHibernateQueryExecuter.java:70)
at net.sf.jasperreports.engine.query.JRHibernateQueryExecuterFactory.createQueryExecuter(JRHibernateQueryExecuterFactory.java:135)
at net.sf.jasperreports.engine.fill.JRFillDataset.createQueryDatasource(JRFillDataset.java:681)
at net.sf.jasperreports.engine.fill.JRFillDataset.initDatasource(JRFillDataset.java:605)
at net.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1281)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:901)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:845)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:58)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417)
at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:199)
at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:95)
tb resolvi o erro, foi só eu colocar alguns jar de depencias na minha lib que funciono.
mas agora meu relatório não exibe nada aparece como senão tivesse nenhum registro no banco de dados mais tem e tb tem outro problema hehehehe, mas esse acredito que seja simples de resolver qdo eu fecho o relatório meu programa parece que fica bloqueado seilah, eu clico em qualquer lugar e nao acontece nada, tipo como se tivesse uma dialog aberta com o modal setado em true, mais nao tem, tem alguma flag que eu coloquei que tava fazendo isso será?