begin process at 2010 03 21 06:36:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

Intégrer un rapport birt


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Intégrer un rapport birt

mercredi 7 janvier 2009 à 15:53:56 | Intégrer un rapport birt

twins_85

 Bonsoir,
J'ai crée un simple rapport avec birt sous eclipse et je fais l'intégration dans une classe java.
Voilà le code :

package Package1;

import

java.util.HashMap;

import

java.util.logging.Level;

import

org.eclipse.birt.core.framework.Platform;

import

org.eclipse.birt.report.engine.api.EngineConfig;

import

org.eclipse.birt.report.engine.api.EngineConstants;

import

org.eclipse.birt.report.engine.api.EngineException;

import

org.eclipse.birt.report.engine.api.HTMLActionHandler;

import

org.eclipse.birt.report.engine.api.HTMLRenderOption;

import

org.eclipse.birt.report.engine.api.HTMLServerImageHandler;

import

org.eclipse.birt.report.engine.api.HTMLCompleteImageHandler;

import

org.eclipse.birt.report.engine.api.IReportEngine;

import

org.eclipse.birt.report.engine.api.IReportEngineFactory;

import

org.eclipse.birt.report.engine.api.IReportRunnable;

import

org.eclipse.birt.report.engine.api.IRunAndRenderTask;

import

org.eclipse.birt.report.engine.api.impl.EngineTask;

import

org.eclipse.birt.report.engine.api.impl.EngineTask;

import

org.eclipse.birt.report.engine.api.impl.RunTask;

import

org.eclipse.birt.report.engine.api.impl.RunAndRenderTask;

import

org.eclipse.birt.report.engine.emitter.*;

public

class ExecuteReport {

public void runReport() throws EngineException

{

IReportEngine engine=

null ;

EngineConfig config =

null ;

try {

System.setProperty(

"java.io.tmpdir" , "c:/temp/test/testsampledb" );

config =

new EngineConfig( );

config.setBIRTHome(

"E:\\2008\\birt-runtime-2_2_2\\birt-runtime-2_2_2\\ReportEngine" );

config.setLogConfig(

"c:/temp/test" , Level. ALL );

Platform.startup( config );

IReportEngineFactory factory = (IReportEngineFactory) Platform

.createFactoryObject( IReportEngineFactory.

EXTENSION_REPORT_ENGINE_FACTORY );

engine = factory.createReportEngine( config );

IReportRunnable design =

null ;

design = engine.openReportDesign(

"C:/Documents and Settings/Administrateur/Travail/MonPremier/src/Package1/TopNPercent.rptdesign" );

 

IRunAndRenderTask task = engine.createRunAndRenderTask(design);

task.setParameterValue(

"Top Percentage" , ( new Integer(3)));;

task.setParameterValue(

"Top Count" , ( new Integer(5)));

task.validateParameters();

HTMLRenderOption options =

new HTMLRenderOption();

options.setOutputFileName(

"ListePro.html" );

options.setOutputFormat(

"html" );

CancelReport cancelThread =

new CancelReport( "cancelReport" , task);

cancelThread.start();

long beginTime = System.currentTimeMillis();

task.run();

long endTime = System.currentTimeMillis();

long timeSpan = endTime - beginTime;

System.

out .println( "Report Runtime: " + timeSpan);

int teststatus = task.getStatus();

if ( teststatus == 4){

System.

out .println( "Report was cancelled" );

}

task.close();

//Create task to run and render the report,

task = engine.createRunAndRenderTask(design);

task.setParameterValue(

"Top Percentage" , ( new Integer(3)));

task.setParameterValue(

"Top Count" , ( new Integer(5)));

task.validateParameters();

task.setRenderOption(options);

beginTime = System.currentTimeMillis();

task.run();

endTime = System.currentTimeMillis();

timeSpan = endTime - beginTime;

System.

out .println( "Report Runtime: " + timeSpan);

teststatus = task.getStatus();

if ( teststatus == 2){

System.

out .println( "Report Completed" );

}

task.close();

engine.shutdown();

engine.destroy();

}

catch ( Exception ex){

ex.printStackTrace();

}

finally

{

Platform.shutdown( );

System.

out .println( "Finished" );

}

}

/**

* @param args

*/

public static void main(String[] args) {

try

{

ExecuteReport ex =

new ExecuteReport( );

ex.runReport();

}

catch ( Exception e )

{

e.printStackTrace();

}

}

private class CancelReport extends Thread

{

private IRunAndRenderTask rTask ;

public CancelReport( String threadName, IRunAndRenderTask task){

super (threadName);

rTask = task;

}

public void run()

{

try {

Thread.currentThread().sleep( 100 );

rTask .cancel();

System.

out .println( "######Report Cancelled#######" );

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

}

et voilà le message d'erreur:

7 janv. 2009 14:34:58 org.eclipse.birt.report.engine.api.impl.RunAndRenderTask doRun

GRAVE: An error happened while running the report. Cause:

java.lang.NullPointerException

at org.eclipse.birt.report.engine.api.impl.EngineTask.createContentEmitter(

EngineTask.java:1060)

at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(

RunAndRenderTask.java:88)

at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(

RunAndRenderTask.java:68)

at Package1.ExecuteReport.runReport(

ExecuteReport.java:69)

at Package1.ExecuteReport.main(

ExecuteReport.java:113)

org.eclipse.birt.report.engine.api.EngineException

: Error happened while running the report

at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(

RunAndRenderTask.java:155)

at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(

RunAndRenderTask.java:68)

at Package1.ExecuteReport.runReport(

ExecuteReport.java:69)

at Package1.ExecuteReport.main(

ExecuteReport.java:113)

Caused by:

java.lang.NullPointerException

at org.eclipse.birt.report.engine.api.impl.EngineTask.createContentEmitter(

EngineTask.java:1060)

at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(

RunAndRenderTask.java:88)

... 3 more

######Report Cancelled#######

Finished

j'attends vos réponses.

Merci d'avance.


Cette discussion est classée dans : report, api, eclipse, engine, birt


Répondre à ce message

Sujets en rapport avec ce message

[Java - eclipse] api avec vue et editeur [ par KingClems ] Salut, je voudrai ecrire une api qui aura une vue (qui sera placé à gauche de l'éditeur par exemple) et un éditeur (cet editeur etant un plugin que j' comment faire un API de jprint comme jfree report [ par toni_rac ] bonjour,j ai un projet c'est comment faire un API d'imprission ( jprint ) comme jfree report ou crystal report et merci. api sawsdl4j sous eclipse [ par d12ahm ] salut t le monde comment ajouter l'api sawsdl4j sous eclipse Installation de l'api nécessaire pour une RS232 sous eclipse [ par gael78420 ] Bonjour je travaille mon projet sous SDK eclipse, et dedans je doit crér une liaison RS232.Je cherche depuis cet après-midi une solution , et il me se Comment Récupérer les données à afficher dans un report BIRT depuis un fichier XML? [ par souad213 ] Bonjou tout le monde;Je suis nouvice en Birt, actuelement je développe une application Java EE et je veux faire des report avec BIRT;Les données à aff Refactoring de code java avec Eclipse? [ par samgamji44 ] Bonjour, Je suis actuellement à la recherches d'informations sur l'utilisation des API de refactoring de Java, dans le but de créer un plugin pour Ec RCP No application id has been found. [ par lounkokobi270987 ] Bonjour j'ai crée une application RCP disposant d'un systeme de mise à jours automatique (P2) depuis que j'ai intégré ce systeme je n'arrive plus à Comment créer une install d'une appli développée avec Eclipse? [ par wilkom2009 ] Salut à tous! J'ai conçu une application en Java avec l'IDE Eclpise. Mais mon problème est comment créer une [u]install[/u] de cette application, à te JDom [ par dadoulilya ] Bonjour, veuillez agréer, mes sincères salutations, Je suis un nouveau membre dans ce site Si il vous plaît ,je veux votre aide concernant API JDom. API java de conversion de RTF to PDF [ par yassino301 ] svp j veux une documentation bien détaillée sur une api java qui permet de convertir des fichiers RTF vers des fichiers PDF avec un exemple Merci.


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales