Como chamar relatórios no iReport java Netbeans

Java

15/05/2015

Bom dia galera

Estou desenvolvendo um relatório no iReport netbeans fiz tudo certinho adicionei os parâmetros de busca
no meu relatório e funciona certinho, porem quando eu vou usar a aplicação para chamar o relatório não funciona
gostaria de saber se alguém pode me ajudar no código que chama o relatório.

Os parametros que uso é para buscar dados entre as datas ou seja uso o BETWEEN.

 private void btnImpressaoActionPerformed(java.awt.event.ActionEvent evt) {                                             
        // Impressão
        
     //  HashMap Filtro = new HashMap ();
        
        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/nomebanco", "loginbanco", "senhabanco");
HashMap parametros = new HashMap(); 
// HashMap String, String parametros = new HashMap String, String();  
parametros.put("datainicio", TextField1.getDate()); // datainicio é o parâmetro que eu usei no iReport
parametros.put("datafinal", TextField2.getDate());  // datafinal é o parâmetro que eu usei no iReport
           JasperPrint print = JasperFillManager.fillReport ("C:caminhoondeestaoarquivo.jasper", parametros, conn); // Coloca ai o local, Onde você salvou o Seu reporte Tamplate
JasperViewer jv = new JasperViewer(print,false);
            jv.setVisible(true); //chama o formulario para visualização
            jv.toFront(); //set o formulario a frente da aplicação
           } catch (Exception ex) {
            JOptionPane.showMessageDialog(rootPane,"Erro ao chamar o relatório!\nErro:"+ ex);
            
           }
        
    }   



O meu código está dando erro alguém tem algum modelo de código para me ajudar?
Jose Santos

Jose Santos

Curtidas 0

Respostas

Jose Santos

Jose Santos

15/05/2015

[img:descricao=exemplo do erro]http://arquivo.devmedia.com.br/forum/imagem/415338-20150518-113846.png[/img]

Eu estou tendo este tipo de problema será que é alguma biblioteca?
isso só acontece quando tento chamar na aplicação o relatório.
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

15/05/2015

Não consigo ver o stackTrace completo, favor copiar e colar aqui todo o erro.
GOSTEI 0
Ronaldo Lanhellas

Ronaldo Lanhellas

15/05/2015

Não consigo ver o stackTrace completo, favor copiar e colar aqui todo o erro.
GOSTEI 0
Jose Santos

Jose Santos

15/05/2015


Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
	at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:121)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:77)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:87)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:57)
	at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:142)
	at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:52)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:247)
	at Formularios.frmTelaInicial2.jMenuItem7ActionPerformed(frmTelaInicial2.java:580)
	at Formularios.frmTelaInicial2.access$2900(frmTelaInicial2.java:20)
	at Formularios.frmTelaInicial2$30.actionPerformed(frmTelaInicial2.java:371)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2346)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
	at java.awt.Component.processMouseEvent(Component.java:6527)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
	at java.awt.Component.processEvent(Component.java:6292)
	at java.awt.Container.processEvent(Container.java:2234)
	at java.awt.Component.dispatchEventImpl(Component.java:4883)
	at java.awt.Container.dispatchEventImpl(Container.java:2292)
	at java.awt.Component.dispatchEvent(Component.java:4705)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4898)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4533)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4462)
	at java.awt.Container.dispatchEventImpl(Container.java:2278)
	at java.awt.Window.dispatchEventImpl(Window.java:2739)
	at java.awt.Component.dispatchEvent(Component.java:4705)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:746)
	at java.awt.EventQueue.access$400(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:697)
	at java.awt.EventQueue$3.run(EventQueue.java:691)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:86)
	at java.awt.EventQueue$4.run(EventQueue.java:719)
	at java.awt.EventQueue$4.run(EventQueue.java:717)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:75)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:716)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: net.sf.jasperreports.engine.util.JRFontNotFoundException: Font '
			net/sf/jasperreports/fonts/pictonic/pictonic.ttf
			net/sf/jasperreports/fonts/pictonic/pictonic.svg
			net/sf/jasperreports/fonts/pictonic/pictonic.eot
			net/sf/jasperreports/fonts/pictonic/pictonic.woff
		' is not available to the JVM. See the Javadoc for more details.
	at net.sf.jasperreports.engine.util.JRFontUtil.checkAwtFont(JRFontUtil.java:358)
	at net.sf.jasperreports.engine.fonts.SimpleFontFamily.createFontFace(SimpleFontFamily.java:320)
	at net.sf.jasperreports.engine.fonts.SimpleFontFamily.setNormal(SimpleFontFamily.java:85)
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamily(SimpleFontExtensionHelper.java:243)
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.parseFontFamilies(SimpleFontExtensionHelper.java:214)
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:183)
	at net.sf.jasperreports.engine.fonts.SimpleFontExtensionHelper.loadFontFamilies(SimpleFontExtensionHelper.java:152)
	at net.sf.jasperreports.engine.fonts.FontExtensionsRegistry.getExtensions(FontExtensionsRegistry.java:55)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:110)
	at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:83)
	... 49 more
CONSTRUÍDO COM SUCESSO (tempo total: 31 segundos)

GOSTEI 0
Jose Santos

Jose Santos

15/05/2015

Eu acredito que deve ser algum problema na biblioteca.
GOSTEI 0
Jose Santos

Jose Santos

15/05/2015

Depois de analisar testar consegui resolver o meu problema abaixo coloquei o código que chama
o relatório na aplicação.


try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/nomebanco", "usuario", "senha")
            
            HashMap parametros = new HashMap(); 
       
parametros.put("datainicio", jDataInicio.getDate());
parametros.put("datafinal", jDataFinal.getDate());
        
parametros, conn);
JasperPrint print = JasperFillManager.fillReport ("C:/caminho do relatorio salvo.jasper", parametros, conn);

JasperViewer jv = new JasperViewer(print,false);
            jv.setVisible(true); //chama o formulario para visualização
            jv.toFront(); //set o formulario a frente da aplicação
           } catch (Exception ex) {
            JOptionPane.showMessageDialog(rootPane,"Erro ao chamar o relatório!\nErro:"+ ex);
            
           }



O erro que estava acontecendo era a biblioteca do JasperReport que não estava reconhecendo.
GOSTEI 0
Felipe Jorge

Felipe Jorge

15/05/2015

O que vc fez pra resolver o problema das bibliotecas?
GOSTEI 0
Jose Santos

Jose Santos

15/05/2015

Fui no site do JasperSoft e baixei as bibliotecas e adicionei no meu projeto.
GOSTEI 0
POSTAR