Geração do relatório ireports dando erro

12 respostas
wdwebsite

Olá pessoal;

Estou tentando gerar um relatório pelo netbeans 7.0.1 e esta dando erro.
a baixo algumas informações:

  • Netbeans 7.0.1;
  • Ireport 4.7.1 - Não e o plugin do netbeans e um software separado;
  • Banco de dados mysql 5.5;
  • Biblioteca que estou usando no netbeans para o jasper é a 4.7.0 (Fiquei na dúvida se poderia ser isso mas não encontrei a 4.7.1);

esses são os dados da conexão:

public class ConexaoMySQL {

    public Connection getConnection() {
        try {
            Class.forName("com.mysql.jdbc.Driver");
            String driver = "jdbc:mysql://localhost/prez";
            Connection con = DriverManager.getConnection(driver, "root", "123");
            return con;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}

Até ai esta funcionando sem erro, a baixo mostra o código onde eu chamo o meu .jasper

public void relatorios() {
        try {
            Connection con = new ConexaoMySQL().getConnection();
            HashMap parametros = new HashMap();
            parametros.put("DATA_INICIO", "2013/10/10");
            parametros.put("DATA_FIM", "2013/10/10");
            JasperPrint jp = JasperFillManager.fillReport("D:/java/relContas.jasper", parametros, con);
            JasperViewer jrv = new JasperViewer(jp);
            jrv.setVisible(true);
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

Agora a baixo são os dados dos erros apresentados no netbeans:

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException
	at java.lang.Class.getDeclaredConstructors0(Native Method)
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
	at java.lang.Class.getConstructor0(Class.java:2699)
	at java.lang.Class.getConstructor(Class.java:1657)
	at net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:690)
	at net.sf.jasperreports.engine.JasperCompileManager.getEvaluator(JasperCompileManager.java:263)
	at net.sf.jasperreports.engine.fill.JRFillDataset.createCalculator(JRFillDataset.java:457)
	at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:379)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:88)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:103)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:61)
	at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:153)
	at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:55)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:276)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:745)
	at financeiro.finLancamentos.relatorios(finLancamentos.java:915)
	at financeiro.finLancamentos.jButton3ActionPerformed(finLancamentos.java:773)
	at financeiro.finLancamentos.access$1700(finLancamentos.java:38)
	at financeiro.finLancamentos$FormListener.actionPerformed(finLancamentos.java:666)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
	at java.awt.Component.processMouseEvent(Component.java:6267)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
	at java.awt.Component.processEvent(Component.java:6032)
	at java.awt.Container.processEvent(Container.java:2041)
	at java.awt.Component.dispatchEventImpl(Component.java:4630)
	at java.awt.Container.dispatchEventImpl(Container.java:2099)
	at java.awt.Component.dispatchEvent(Component.java:4460)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
	at java.awt.Container.dispatchEventImpl(Container.java:2085)
	at java.awt.Window.dispatchEventImpl(Window.java:2478)
	at java.awt.Component.dispatchEvent(Component.java:4460)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.control.CompilationFailedException
	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

Fico no aguardo caso alguem possa me ajudar.

12 Respostas

welintom04

Quando você desenvolveu o loyalt e a Query do relatório no ireport ele compilou certinho?

Esse erro que deu ai e de quando ele não consegue compilar o relatório, tipo quando você compila e testa o relatório pelo Ireport da tudo certo?

E

Compilou o relatorio no ireport sem erro ??? apresentou os dados ??

Estou usando o ireport 5 e é de boa

wdwebsite

Bom nessa versão de ireport eu não vi algum lugar especifico para compilar, normalmente eu so dou preview e colocos as datas e funciona gera o relatório normalmente, ou antes de eu colocar no netbeans tem alguma compilação que tenho que fazer?

Pelo menos nesta versão não achei nem um botão de compilar.

welintom04

Se você da preview ele compila automaticamente, o botão de compilar e o 4º após o de Preview ou antes da caixa de seleção de Fonte de texto.

Bom seu relatório no Ireport deve estar certo, me diga qual os tipos dos paramentros data_inicio e data_final?
E posta tbm o SELECT que o relatorio ta fazendo.

E

Tem certeza que esta peenchendo todos os campos no java ??

wdwebsite

Na questão do botão de compilação eu achei, mas mesmo assim não funcionou.

Quanto aos campos java sim o unico parametro que faltava era a data mesmo.

welintom04

Então, mais posta aqui o SELECT que o seu relatório esta dando no banco de dados mysql,
e posta tambem quais os tipos da variáveis DATA_INICIO e DATA_FIN la no seu relatório no Ireport porque se você tiver usando la como tipo java.util.Date
e você tentar passar String aqui no java vai dar erro.

wdwebsite

Eu não entendi a questão do SELECT.

Mas na questão das datas são váriáveis apenas e uma variável padrão tipo NEW date(); ou seja se não for enviado nem uma data ela fica com a data padrão, e uma variável tipo date, que aceita justamente este tipo de data, já tentei colocar sem a data também da o mesmo erro.

welintom04

Entao o Select e onde você faz a consulta no banco de dados la no DESIGN QUERY do Ireport.

Bom amigo, você disse que quando vc da preview no ireport funciona tudo ok, a unica coisa que eu acho que pode ser agora são as bibliotecas do Ireport.

Tenta o seguinte baxa a ultima versão do Ireport e instala, ai nela você faz do zero o mesmo relatório e copila ele e ve se deu preview certinho.

http://sourceforge.net/projects/ireport/files/iReport/iReport-5.0.1/

Depois você copia as bibliotecas do IReport da nova versao que você instalou e adiciona no seu projeto Java.

Nesse tutorial ensina como achar as bibliotecas na pasta de instalação do Ireport.

http://davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

Bom amigo se você seguinte esse passos e ainda não der certo temo não poder ajuda lo.
Boa sorte!

wdwebsite

Acabei de atualizar o Netbeans para versão 7.3
E o jasper e o plugin do jasper netbeans para o 5.0.1

Agora esta faltando a biblioteca do pacote pois não to achando.

welintom04

Bom voce tem que ir na pasta de instalação do Ireport para capturar as Bibliotecas .jar

no meu computador o caminho é o seguinte:

Agora e só voce seguir o tutorial do David Buzato
http://davidbuzatto.com.br/2010/10/09/jasperreports-trabalhando-com-relatorios-em-java-parte-1/

Lá mostra como importar as bibliotecas no seu projeto.

Ele indica importar todas as bibliotecas desta pasta ( Somente os .jar ) pois nunca se sabe quais serao exigidas em um relatório.

Até!

wdwebsite

Consegui atualizar as bibliotecas, mas agora esta dando erro com o toplink da persistencia, eu sou de azar viu.

Criado 9 de março de 2013
Ultima resposta 12 de mar. de 2013
Respostas 12
Participantes 3