IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

Compilation JasperReport sur Servlet


Sujet :

Servlets/JSP Java

  1. #1
    Membre averti
    Inscrit en
    Avril 2005
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 32
    Par défaut Compilation JasperReport sur Servlet
    Bonjour, je souhaiterais compiler un rapport à partir d'une servlet (j'utilise eclipse avec un serveur Tomcat). Mais la compilation déclenche une exception :
    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
    net.sf.jasperreports.engine.JRException: Errors were encountered when compiling report expressions class file:
    C:\eclipse lomboz\classic_landscape_1182331814270_38862.java:4: package net.sf.jasperreports.engine does not exist
    import net.sf.jasperreports.engine.*;
    ^
    C:\eclipse lomboz\classic_landscape_1182331814270_38862.java:5: package net.sf.jasperreports.engine.fill does not exist
    import net.sf.jasperreports.engine.fill.*;
    ^
    C:\eclipse lomboz\classic_landscape_1182331814270_38862.java:14: package net.sf.jasperreports.engine does not exist
    import net.sf.jasperreports.engine.*;
    ^
    C:\eclipse lomboz\classic_landscape_1182331814270_38862.java:15: package net.sf.jasperreports.engine.data does not exist
    import net.sf.jasperreports.engine.data.*;
    ^
    C:\eclipse lomboz\classic_landscape_1182331814270_38862.java:21: cannot find symbol
    symbol: class JREvaluator
    public class classic_landscape_1182331814270_38862 extends JREvaluator
     
    ...etc.
    Voici le bout de code qui est exécuté par ma servlet action :
    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    // - Paramètres de connexion à la base de données
    		String url = "jdbc:mysql://localhost/avv";
    		String login = "root";
    		String password = "admin";
    		Connection connection = null;
     
    		try {
    			// - Connexion à la base
    			Driver monDriver = new com.mysql.jdbc.Driver();
    			DriverManager.registerDriver(monDriver);
    			connection = DriverManager.getConnection(url, login, password);
     
    			// - Chargement et compilation du rapport
    			JasperDesign jasperDesign = JRXmlLoader.load("c:\\test2.jrxml");
    			JasperReport jasperReport = JasperCompileManager
    					.compileReport(jasperDesign);
     
    			// - Paramètres à envoyer au rapport
    			Map parameters = new HashMap();
    			parameters.put("Titre", "Titre");
     
    			JasperFillManager.fillReportToStream(jasperReport, response
    					.getOutputStream(), parameters);
     
    			response.setContentType("application/pdf");
    			response.setHeader("Content-Disposition",
    					"attachment; filename=\"test.pdf\"");
     
    			// - Execution du rapport
    			// JasperPrint jasperPrint =
    			// JasperFillManager.fillReport(jasperReport, parameters,
    			// connection);
     
    			// - Création du rapport au format PDF
    			// JasperExportManager.exportReportToPdfStream(jasperPrint,
    			// response.getOutputStream());
    			// JasperExportManager.exportReportToHtmlFile(jasperPrint,
    			// "c:\\test.html");
     
    		} catch (JRException e) {
     
    			e.printStackTrace();
    		} catch (SQLException e) {
     
    			e.printStackTrace();
    		} finally {
    			try {
    				connection.close();
    			} catch (SQLException e) {
     
    				e.printStackTrace();
    			}
    		}
    L'exception se produit ici => JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);

    J'ai pourtant bien rajouté les librairies dans le classpath de mon projet eclipse... Si quelqu'un pouvait m'aider !

  2. #2
    Membre averti
    Inscrit en
    Avril 2005
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 32
    Par défaut
    J'ai enfin réussi à compiler cet exemple, et il fonctionne. La solution,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    System.setProperty("jasper.reports.compile.class.path", sc.getRealPath("/WEB-INF/lib/jasperreports-1.3.4.jar")
                        + System.getProperty("path.separator")
                        + sc.getRealPath("/WEB-INF/classes/"));
    Il fallait déclarer une variable système avant d'appeler la méthode compileReport

    Maintenant se pose un autre problème que je n'arrive pas à résoudre, si mon rapport contient un graphique, j'ai une exception java.lang.NoClassDefFoundError: org/jfree/chart/plot/PlotOrientation.
    J'ai bien ajouté le jar jfreechart-1.0.0.jar dans les librairies, j'ai tenté de le rajouter dans la variable d'environnement "jasper.reports.compile.class.path", mais rien n'y fait...

Discussions similaires

  1. erreur de compilation Tomcat sur netbeans 5.5
    Par farid.ensi dans le forum JSF
    Réponses: 4
    Dernier message: 26/02/2007, 16h52
  2. Probléme de compilation d'une servlet
    Par adil_vpb dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 12/02/2007, 13h31
  3. un conseil sur servlet et JSP
    Par 18Marie dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 01/08/2006, 11h03
  4. Compiler SOCI sur MSVS 6.0
    Par gmartintin dans le forum MFC
    Réponses: 2
    Dernier message: 27/10/2005, 14h57
  5. [Servlet][Compilation] Erreur de compil dans code servlet
    Par gandalf_le_blanc dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 13/05/2004, 10h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo