Geração do relatório ireports dando erro

12 respostas
W

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

W

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

W

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.

W

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 ??

W

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.

W

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.

W

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.

W

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!

W

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.

W

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é!

W

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