<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Últimas mensagens do tópico "Preencher Relatórios JasperReport com Hibernate"]]></title>
		<link>http://www.guj.com.br/posts/list/18.java</link>
		<description><![CDATA[Últimas mensagens enviadas no tópico "Preencher Relatórios JasperReport com Hibernate"]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>Preencher Relatórios JasperReport com Hibernate</title>
				<description><![CDATA[ Ola pessoal,<br /> Estou com problemas para gerar relatórios na minha aplicação.<br /> <br /> Utilizo Hibernate com Annotations, JasperReport<br /> <br /> Tenho a Classe Cliente<br /> [code]<br /> @Entity<br /> public class Cliente implements java.io.Serializable {<br />     @Id<br />     private Integer codigo;<br />     @Column(nullable = false)<br />     private String nome;<br />     @ManyToOne()<br />     private Cidade cidade;<br /> <br />    //Getters e Setters<br /> <br /> }<br /> [/code]<br /> <br /> Busco uma List&lt;Cliente&gt; no banco;<br /> <br /> envio para o JRBeanCollectionDataSource(cliente);<br /> <br /> o problema é que o Jasper não encontra os atributos da classe Cidade que esta associada a classe Cliente<br /> [code]<br />  java.lang.NoSuchMethodException:Unknown property 'nome_cidade'.<br /> [/code]<br /> <br /> Já pesquisei em varios lugares uma forma de preencher relatórios com o Hibernate, todas as que encontrei não resolveram o problema, então tentei buscar um objeto Connection para gerar um ResultSet e enviar como parametro para o metodo JasperFillManager.fillReport(), porem o objeto Connection retornado pelo Hibernate vem nulo.<br /> <br /> [code]<br /> private Connection getConnection() {<br />         try {<br />             return HibernateUtility.getSession().disconnect();<br />         } catch (Exception ex) {<br />             ex.printStackTrace();<br />         }<br />         return null;<br />     }<br /> <br /> [/code]<br /> <br /> ou<br /> <br /> [code]<br /> private Connection getConnection() {<br />         try {<br />             return HibernateUtility.getSession().close();<br />         } catch (Exception ex) {<br />             ex.printStackTrace();<br />         }<br />         return null;<br />     }<br /> <br /> [/code]<br /> [code]<br /> 2008-02-22 12:40:41,750 WARN  engine.query.JRJdbcQueryExecuter  -&gt; The supplied java.sql.Connection object is null.<br /> [/code]<br /> <br /> Se alguem souber como buscar um Connection valido, ou saiba alguma outra forma de preencher relatórios, será bem vinda!<br /> <br /> Valew t+]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/82789/441298/preencher-relatorios-jasperreport-com-hibernate
</guid>
				<link>http://www.guj.com.br/prepost/82789/441298/preencher-relatorios-jasperreport-com-hibernate
</link>
				<pubDate><![CDATA[Fri, 22 Feb 2008 13:03:00]]> GMT</pubDate>
				<author><![CDATA[ Junio Fernando]]></author>
			</item>
			<item>
				<title>Re:Preencher Relatórios JasperReport com Hibernate</title>
				<description><![CDATA[ Cara, eu utilizo da seguinte forma com Hibernate:<br /> [code]<br /> try {<br />     // Um List com os registros que vêm do DAO<br />     List&lt;ClasseDoObjeto&gt; dataSource = ClasseDoObjetoDAO.getObjetos();<br /> <br />     // Um HashMap com os parâmetros<br />     HashMap params = new HashMap();<br /> <br />     // Exibicao do Relatorio<br />     JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(dataSource);<br />     JasperReport report = (JasperReport) JRLoader.loadObject(getClass().getClassLoader().getResource("relatorio/nome_do_rel.jasper"));<br /> <br />     JasperPrint impressao = JasperFillManager.fillReport(report, params, ds);<br /> <br />     JRViewer viewer = new JRViewer(impressao);<br /> <br />     JInternalFrame frameViewer = new JInternalFrame("Relatorio");<br />     frameViewer.setSize(800, 600);<br />     frameViewer.setMaximizable(true);<br />     frameViewer.setClosable(true);<br />     frameViewer.setResizable(true);<br />     frameViewer.add(viewer);<br /> <br />     FrmPrincipal.dpPrincipal.add(frameViewer);<br />     frameViewer.setVisible(true);<br />     frameViewer.setMaximum(true);<br /> <br /> } catch (Exception e) {<br />     Log.registraErro("Problema ao gerar Relatorio.\n" + e.getMessage());<br /> }[/code]<br /> <br /> Mas para que funcione, o relatório deve ter sido configurado corretamente lá no iReport.<br /> Verifique se está.<br /> <br /> Qualquer coisa, tenho um método também para obter um Connection do Hibernate que utilizo às vezes, mas essa forma não é recomendada.<br /> <br /> Falow]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/82789/441510/repreencher-relatorios-jasperreport-com-hibernate
</guid>
				<link>http://www.guj.com.br/prepost/82789/441510/repreencher-relatorios-jasperreport-com-hibernate
</link>
				<pubDate><![CDATA[Fri, 22 Feb 2008 16:59:45]]> GMT</pubDate>
				<author><![CDATA[ raci0nal]]></author>
			</item>
			<item>
				<title>Re:Preencher Relatórios JasperReport com Hibernate</title>
				<description><![CDATA[ Cara, até sei que gostam desse negócio de Collection, mas vai ai a dica. Usa os mapeamentos em XML, sem Annotation. Faz tudo no iReport e depois de compilado em .jasper, passa os parâmetros via Hibernate Annotation. <br /> <br /> PS: Antes que reclamem, usem um Hibernate Tools da vida pra fazer esses "malditos" XMLs.<br /> <br /> Abraços]]></description>
				<guid isPermaLink="true">http://www.guj.com.br/prepost/82789/441551/repreencher-relatorios-jasperreport-com-hibernate
</guid>
				<link>http://www.guj.com.br/prepost/82789/441551/repreencher-relatorios-jasperreport-com-hibernate
</link>
				<pubDate><![CDATA[Fri, 22 Feb 2008 17:45:46]]> GMT</pubDate>
				<author><![CDATA[ djemacao]]></author>
			</item>
	</channel>
</rss>
