Exception

Boas,

Por favor alguem ajude com este codigo :

try{
JasperReport relatorio = JasperCompileManager.compileReport(“C:/iReport-1.2.1/Extracto.jasper”);
Map parametros = new HashMap();
JasperPrint impressao = JasperFillManager.fillReport(relatorio, parametros); // no lugar do null poderia ser um datasource

       JasperViewer view = new JasperViewer(impressao);

       view.show();
       }catch(Exception e){e.printStackTrace();}

O que é que pode estar mal ? quando corro ele da me o seguinte erro no netbeans :

Exception in thread “AWT-EventQueue-0” java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester
at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:142)

e ele aponta o erro para esta linha :
JasperReport relatorio = JasperCompileManager.compileReport(“C:/iReport-1.2.1/Extracto.jasper”);

Alguem pode me ajudar ?
Estou apenas querendo abrir um reporte atraves de uma class, sem ligação a base de dados.

Obrigado!

Luis Claudio,

O que acontece é que quando você roda o seu código o arquivo commons-digester.jar não deve estar na classpath. Coloque o arquivo e tente de novo.

Em uma atualização que fiz em um projeto recentemente o arquivo commons-digester.jar estava presente, mas em uma versão antiga, de forma que algumas classes e métodos chamados pelo jasper simplesmente não existiam. Tive de atualizar o common-digester e o funcionou adequadamente.

Moral da história: o common-digester deve estar na classpath e em uma versão compatível com a sua versão o jasper reports :wink:

Boa sorte.