Alguém sabe como fazer um rel simples com iReport e Hibernate ???
Já montei um rel simples que lista registros de um cadastro de produto…
já consegui colocar em uma classe gerar um pdf ou um preview com jdbc
O problema é quando trago uma consulta do hibernate…tentei este código
List<Produto> lista = new GenericDAO<Produto>(s, Produto.class).lista(" where descricaoProduto like '%" + 'P' + "%' ");
Map parametros = new HashMap();
parametros.put("parametro1","valor1");
JasperReport jasperReport = JasperManager.loadReport("RelProduto.jasper");
JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(lista);
JasperPrint jasperPrint = JasperManager.fillReport(jasperReport, parametros, ds);
JasperManager.printReportToPdfFile(jasperPrint, "RelProduto.pdf");
Mas está dando a seguinte msg:
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.
pesquisando algum produto…
Hibernate: select produto0_.idProduto as idProduto, produto0_.descricaoProduto as descrica2_0_, produto0_.nome as nome0_, produto0_.preco as preco0_, produto0_.IDTIPOPRODUTO as IDTIPOPR5_0_ from Produto produto0_ where (descricaoProduto like ‘%P%’)
Exception in thread “main” java.lang.NoSuchMethodException: Unknown property ‘IDPRODUTO’
at org.apache.commons.beanutils.PropertyUtils.getSimpleProperty(PropertyUtils.java:1175)
at org.apache.commons.beanutils.PropertyUtils.getNestedProperty(PropertyUtils.java:772)
at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:801)
at net.sf.jasperreports.engine.data.JRBeanCollectionDataSource.getFieldValue(JRBeanCollectionDataSource.java:114)
at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:872)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:116)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:622)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:116)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:428)
at net.sf.jasperreports.engine.JasperManager.fillReport(JasperManager.java:836)
at br.com.empresa.modelo.TesteRel.main(TesteRel.java:51)
NESTED BY :
net.sf.jasperreports.engine.JRException: Error retrieving field value from bean : IDPRODUTO
at net.sf.jasperreports.engine.data.JRBeanCollectionDataSource.getFieldValue(JRBeanCollectionDataSource.java:126)
at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:872)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:116)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:622)
at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:116)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:428)
at net.sf.jasperreports.engine.JasperManager.fillReport(JasperManager.java:836)
at br.com.empresa.modelo.TesteRel.main(TesteRel.java:51)
Caused by: java.lang.NoSuchMethodException: Unknown property ‘IDPRODUTO’
at org.apache.commons.beanutils.PropertyUtils.getSimpleProperty(PropertyUtils.java:1175)
at org.apache.commons.beanutils.PropertyUtils.getNestedProperty(PropertyUtils.java:772)
at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:801)
at net.sf.jasperreports.engine.data.JRBeanCollectionDataSource.getFieldValue(JRBeanCollectionDataSource.java:114)
… 7 more
Existe alguma coisa especial ??? já tentei especificar o nome do campo mas o erro persiste…