Bonjour à tous,
Je suis toute débutante en génération des états en Java et j'utilise IReport 3.6.2. A cet effet, j'ai importé les .jar suivants :
commons-beanutils-1.8.0.jar
commons-collections-3.2.1.jar
commons-digester-1.7.jar
commons-logging-1.1.jar
itext-2.1.0.jar
jasperreports-3.6.2.jar
mysql-connector-java-5.1.6-bin.jar
après avoir généré le fichier "report2.jrxml".
Mon code :
génère les erreurs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JasperCompileManager; import net.sf.jasperreports.engine.JasperExportManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; import net.sf.jasperreports.engine.JasperReport; import net.sf.jasperreports.engine.design.JasperDesign; import net.sf.jasperreports.engine.xml.JRXmlLoader; import com.mysql.jdbc.Driver; public class JasperTest { public static void main(String[] args) { // - Paramètres de connexion à la base de données String url = "jdbc:mysql://localhost/jasper_database"; String login = "root"; String password = ""; try { // - Connexion à la base Driver monDriver = new com.mysql.jdbc.Driver(); DriverManager.registerDriver(monDriver); Connection connection = DriverManager.getConnection(url, login, password); // - Chargement et compilation du rapport JasperDesign jasperDesign = JRXmlLoader.load("C:\\Documents and Settings\\armel\\Mes documents\\report2.jrxml"); JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); // - Paramètres à envoyer au rapport Map parameters = new HashMap(); parameters.put("Titre", "Titre"); // - Execution du rapport JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters,connection); // - Création du rapport au format PDF JasperExportManager.exportReportToPdfFile(jasperPrint,"C:\\Documents and Settings\\armel\\Mes documents\\report2.pdf"); net.sf.jasperreports.view.JasperViewer.viewReport(jasperPrint); } catch (JRException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } }
Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:157)
at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:115)
at net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:511)
at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:215)
at JasperTest.main(JasperTest.java:36)
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.control.CompilationFailedException
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
... 7 more
Java Result: 1
BUILD SUCCESSFUL (total time: 16 seconds)
Je me demande s'il n'y a pas une librairie manquante ou si mon fichier a été bien généré.
Vous pouvez m'aider à y voir plus clair?
Merci d'avance.







Répondre avec citation




(et le message apparaissait déjà) et ensuite j'ai procédé par élimination en louchant sur les noms des .jar et en suivant mon instinct
.


Partager