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

BIRT Discussion :

ReportEngine : erreur lors de la génération d'un rapport


Sujet :

BIRT

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 22
    Points : 11
    Points
    11
    Par défaut ReportEngine : erreur lors de la génération d'un rapport
    Bonjour,
    je suis en train de prendre en main BIRT (du moins j'essaie) et j'ai un soucis plutôt incompréhensible.

    J'ai réalisé un programme qui me permet de générer un rapport au format HTML que voici :
    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
    54
    55
    56
     
    	static void generation(String adrsDesign, String adrsRapport) throws EngineException{
    		EngineConfig config;
    		ReportEngine engine;
     
    		try{
    			//Déclaration de la configuration du Report Engine
    			config = new EngineConfig( );
    			config.setEngineHome("C:/birt-runtime-2_1_0/ReportEngine");
    			config.setLogConfig(null, Level.WARNING);
     
    			//Récupération du report
    			engine = new ReportEngine(config);
    			engine.changeLogLevel(Level.WARNING);
    			IReportRunnable design = engine.openReportDesign(adrsDesign);
     
    			//Configuration du format de l'image générée du rapport (ici : une image SVG)
    			HTMLRenderContext renderContext = new HTMLRenderContext();
    			renderContext.setImageDirectory("C:/Birt/images");			
    			renderContext.setSupportedImageFormats("JPG;PNG;BMP;SVG");
     
    			//Configuration du fichier génére pour le rapport (ici : un fichier HTML)
    			HashMap<String, HTMLRenderContext> contextMap = new HashMap<String, HTMLRenderContext>();
    			contextMap.put(EngineConstants.APPCONTEXT_HTML_RENDER_CONTEXT,renderContext);
     
    			//Mise en place des options portant sur le fichier HTML généré (ici : définition d'un chemin et nom par défaut)
    			HTMLRenderOption options = new HTMLRenderOption();
    			options.setOutputFileName(adrsRapport);
     
    			//Création et Mise à jour des options du générateur de rapport 
    			IRunAndRenderTask task = engine.createRunAndRenderTask(design);
    			task.setAppContext(contextMap);
    			task.setRenderOption(options);
     
    			//Lancement de la génération
    			task.run();
     
    			//Destruction des éléments définis précédemment
    			task.close();
    			engine.destroy();
     
    		} catch(Exception ex){
    			ex.printStackTrace();
    		}
     
    		System.out.println("Terminé");
    	}
     
     
            public static void main(String[] args) {
    		try	{
    			generation("C:/Birt/test.rptdesign","C:/Birt/rapport.html");	
    		} catch ( Exception e ) {
    			e.printStackTrace();
    		}
    	}
    Quand je le lance, aucun soucis il me génère bien le rapport !

    Mais quand je change ma fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    static void generation(...)
    en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void generation(...)
    et que je l'appelle à partir d'un autre programme j'ai l'erreur suivante :

    28 juil. 2006 10:01:51 org.eclipse.birt.report.engine.api.impl.ReportEngine setupScriptScope
    INFO: Error occurs while initialze script scope
    org.mozilla.javascript.EvaluatorException: Il est impossible d'ajouter une propriété à un objet fermé ()
    at org.mozilla.javascript.DefaultErrorReporter.runtimeError(DefaultErrorReporter.java:76)
    at org.mozilla.javascript.Context.reportRuntimeError(Context.java:591)
    at org.mozilla.javascript.Context.reportRuntimeError(Context.java:630)
    at org.mozilla.javascript.Context.reportRuntimeError0(Context.java:600)
    at org.mozilla.javascript.ScriptableObject.addSlot(ScriptableObject.java:1685)
    at org.mozilla.javascript.ScriptableObject.getSlotToSet(ScriptableObject.java:1647)
    at org.mozilla.javascript.ScriptableObject.put(ScriptableObject.java:247)
    at org.mozilla.javascript.IdScriptable.put(IdScriptable.java:111)
    at org.mozilla.javascript.ScriptableObject.defineProperty(ScriptableObject.java:1077)
    at org.mozilla.javascript.IdScriptable.defineProperty(IdScriptable.java:194)
    at org.mozilla.javascript.ScriptableObject.defineProperty(ScriptableObject.java:1103)
    at org.mozilla.javascript.IdScriptable.addIdFunctionProperty(IdScriptable.java:451)
    at org.mozilla.javascript.NativeString.fillConstructorProperties(NativeString.java:71)
    at org.mozilla.javascript.IdScriptable.addAsPrototype(IdScriptable.java:424)
    at org.mozilla.javascript.NativeString.init(NativeString.java:57)
    at org.mozilla.javascript.Context.initStandardObjects(Context.java:703)
    at org.eclipse.birt.report.engine.api.impl.ReportEngine.setupScriptScope(ReportEngine.java:120)
    at org.eclipse.birt.report.engine.api.impl.ReportEngine.<init>(ReportEngine.java:87)
    at org.eclipse.birt.report.engine.api.impl.ReportEngineFactory.createReportEngine(ReportEngineFactory.java:13)
    at org.eclipse.birt.report.engine.api.ReportEngine.<init>(ReportEngine.java:54)
    at caterpillar.genReport.Test.generation(Test.java:30)
    at thales.gui.view.VuePieChart.initialize(VuePieChart.java:36)
    at thales.gui.view.VuePieChart.<init>(VuePieChart.java:27)
    at thales.gui.view.MainFrame.getPVuePieChart(MainFrame.java:447)
    at thales.gui.view.MainFrame$4.actionPerformed(MainFrame.java:131)
    at thales.gui.view.GlobalHotkeyManager.dispatchEvent(GlobalHotkeyManager.java:43)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
    Si quelqu'un pouvait me dire à quoi c'est dû ça m'aiderai beaucoup.

    Merci d'avance.

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    As tu mis des scripts dans ton état ?

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    non j'en ai pas définit mais quand je lance mon programme et que je vais visualiser mon état il y des scripts en commentaires ! Est-ce normal ?

  4. #4
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Hum... fais gaffe parce desfois BIRT enregistre mal. Ferme et réouvre et ton état et regarde s'il a bien pris en compte les modifications. Vérifie que tout tes scripts soient en commentaires.

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    oui ils sont en commentaire !

    Mais ce que je comprend pas c'est :
    - d'où sortent ces scripts que je n'ai pas écrits
    - pourquoi ça marche quand je l'appelle à partir du main et pourquoi ça marche pas quand je l'appelle à partir d'un autre programme

  6. #6
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Hum en fait, c'est pas à l'éxécution de l'état donc ca ne vient pas de là, excuse moi.

    La ligne trente de Test.java c'est bien celle ci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    engine = new ReportEngine(config);
    Peux-tu attacher le fichier Test.java à ton prochain message s'il te plaît ?

  7. #7
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    bon j'ai fait plein de tests et je t'avouerai je ne comprends rien, un coup ça marche un coup ça marche pas Du coup je te mets mon projet test en entier.

    Je vais continuer de mon côté à faire des tests mais je commence à ne plus avoir d'idée.

    Je te tiendrai au courant de mon avancement.
    Fichiers attachés Fichiers attachés

  8. #8
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Bon je pense avoir ciblé le problème.
    En fait j'ai fait énormément de tests et il s'avère que j'ai cette erreur lorsque j'appelle mon programme à partir d'un autre projet java qui a un répertoire source "src" et ses packages définis dedans.
    Pour tous les autres projets java qui n'ont pas ce répertoire source "src", tout fonctionne à merveille.
    Je ne sais pas à quoi c'est dû mais il me semble que ça vient de là

Discussions similaires

  1. [Checkstyle] [Maven]Erreur lors de la génération d'un rapport
    Par alex77722 dans le forum Qualimétrie
    Réponses: 1
    Dernier message: 23/08/2012, 10h27
  2. Réponses: 20
    Dernier message: 18/01/2011, 12h47

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