Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Jasper
Jasper Forum d'entraide sur Jasper Reports. Avant de poster --> FAQ Jasper, Tutoriels Jasper
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/03/2008, 13h15   #1
Invité de passage
 
Inscription : mars 2008
Messages : 14
Détails du profil
Informations forums :
Inscription : mars 2008
Messages : 14
Points : 1
Points : 1
Par défaut j'ai un petit soucis IReport

Je souhaite exporter au format excel (xls) et word(rtf). Pour me faire la main je me suis dit que j'allais commencer par une petite exportation au format pdf puis je passerai aux chôses plus sérieuses.
La conception des états sous Ireport se passe bien. Mais mon problème se situe au niveau du code java qui doit appeler le fichier .jrxml réalisé.
Je vous explique j'ai suivi le tuto IReport [URL="http://ericreboisson.developpez.com/...er-report/pdf/"] en l'adaptant a mes paramètres à savoir comme base de donnée sqlserver et en important les drivers qui vont avec.

J'ai établi la connexion de IReport à sqlserver le fichier .jrxml a été génère. Le code qui permet de générer le PDF est celui-ci :
Code :
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
54
55
56
57
58
59
60
61
62
63
64
65
66
 
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import java.sql.*;
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.microsoft.sqlserver.jdbc.SQLServerDriver;
 
 
 
public class GeneratePDF {
 
    public static void main(String[] args) {
 
        // - Paramètres de connexion à la base de données
        String url = "jdbc:odbc:jasper_database";
        String login = "Identifiant";
        String password = "mot de passe";
        Connection connection = null;
 
        try {
            // - Connexion à la base
 
            Driver monDriver = new SQLServerDriver();
            DriverManager.registerDriver(monDriver);
            connection = DriverManager.getConnection(url, login, password);
 
            // - Chargement et compilation du rapport
            JasperDesign jasperDesign = JRXmlLoader.load("D:\\iReport-2.0.5\\classic.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, "D:\\iReport-2.0.5\\classic.pdf");
        } catch (JRException e) {
 
            e.printStackTrace();
        } catch (SQLException e) {
 
            e.printStackTrace();
        } finally {
            try {
                 connection.close();
                } catch (SQLException e) {
 
                        e.printStackTrace();
                }
        }
 
    }
}
l'erreur générer :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
net.sf.jasperreports.engine.JRException: Error compiling report java source files : C:\Documents and Settings\azekiri\workspace\JasperTest\classic_1206638460921_536463.java 
	at net.sf.jasperreports.engine.design.JRJavacCompiler.compileClasses(JRJavacCompiler.java:93)
	at net.sf.jasperreports.engine.design.JRAbstractClassCompiler.compileUnits(JRAbstractClassCompiler.java:67)
	at net.sf.jasperreports.engine.design.JRAbstractCompiler.compileReport(JRAbstractCompiler.java:190)
	at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:219)
	at GeneratePDF.main(GeneratePDF.java:38)
Caused by: java.io.IOException: Cannot run program "javac": CreateProcess error=2, Le fichier spécifié est introuvable
	at java.lang.ProcessBuilder.start(Unknown Source)
	at java.lang.Runtime.exec(Unknown Source)
	at java.lang.Runtime.exec(Unknown Source)
	at net.sf.jasperreports.engine.design.JRJavacCompiler.compileClasses(JRJavacCompiler.java:62)
	... 4 more
Caused by: java.io.IOException: CreateProcess error=2, Le fichier spécifié est introuvable
	at java.lang.ProcessImpl.create(Native Method)
	at java.lang.ProcessImpl.<init>(Unknown Source)
	at java.lang.ProcessImpl.start(Unknown Source)
	... 8 more


merci pour votre aide.
heoue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2008, 13h41   #2
Membre habitué
 
Avatar de anayathefirst
 
Inscription : décembre 2006
Messages : 326
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations forums :
Inscription : décembre 2006
Messages : 326
Points : 147
Points : 147
Salut,
J'ai eu le même souci à un moment, et je n'ai malheureusement pas réussi à le régler, cependant, j'ai put le contourner :
ton problème, c'est la compilation, et vu que tu développes tes rapports avec iReport, tu peut carrément conpiler chaque rapport et générer des fichiers .jasper en utilisant iReport. Après, tu ne fait que lancer le rapport avec les bonnes connexions qui vont bien, il ira chercher les données là où il faut. En plus, le rapport n'est pas sensé être recompilé à chaque lancement, il ne faut le faire que si tu modifie quelque chose dedans.
Bonne continuation.
anayathefirst est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2008, 16h08   #3
Membre éclairé
 
Inscription : avril 2007
Messages : 195
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 195
Points : 320
Points : 320
Il s'agit en fait ici d'une variable d'environnement JAVA_HOME non définie.
Il faut donc consulter la documentation de la JVM à ce propos.
__________________
Cordialement,

*****************
Christopher André
Sales Engineer

Voir mon profil

Il est extrêmement rare que je réponde à un message privé.
Contribuez à la FAQ Jasper Reports & iReport
candre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2009, 11h47   #4
Futur Membre du Club
 
Inscription : novembre 2007
Messages : 161
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 161
Points : 18
Points : 18
Bonjour heoue

Est ce que tu as résolu ton problème?
En fait j'ai le même problème, pour la génération de mes rapports il m'affiche l'erreur suivante dans la console:
Code :
java.io.IOException: Cannot run program "javac": CreateProcess error=2, Le fichier spécifié est introuvable
Et j'ai pas pu ajouter les variables d'environnement,
Malgré que la variable PATH est la suivante
Code :
C:\Ruby\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;"C:\Program Files\Java\jre1.6.0_06\bin"
Comment je peux configuré mes variables PATH et CLASSPATH ?

Merci d'avance.
Bine cordialement.
RouRa22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h02.


 
 
 
 
Partenaires

Hébergement Web