|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : mai 2006 Messages : 48 ![]() |
Bonjour à tous,
J'ai créer un rapport à partir du designer, il contient une datasource, un dataset et des paramètres. J'aimerais savoir s'il est possible de lui donner tout cela via du code, je m'explique les infos de la connection, le query et ses paramètres seraient injectés dans le rapport via du code java. Est-ce possible ou alors faut-il un minimum dans le rapport ? j'ai déja la solution pour transmettre les paramètres via du code (task.setParametersValues()) donc pour cela tout est ok. Si quelqu'un avait un petit bout de code en exemple ce serait génial. D'avance merci pour votre aide. maxscljava |
|
|
00
|
|
|
#2 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
|
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : mai 2006 Messages : 48 ![]() |
Bonjour,
Tout d'abord merci pour ton information concernant la génération de raport Birt via java. J'ai essayé ton exemple en faisant pas à pas les instructions, mais je dois commètre une erreur qui n'est pas juste car j'ai ceci comme message : (Pourrais-tu m'aider ? D'avance merci, maxscljava) 29-juin-2006 9:26:04 org.eclipse.birt.core.util.BirtTimer logTimeTaken INFO: Engine startup takes 500 Milliseconds. 29-juin-2006 9:26:07 org.eclipse.birt.data.engine.impl.DataEngineImpl <init> INFO: Data Engine starts up 29-juin-2006 9:26:08 org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor handleJS ATTENTION: A BIRT exception occurred: Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage Personnes] n'est pas une fonction (DataSet[ScriptedDataSet].__bm_OPEN#2) Script source: DataSet[ScriptedDataSet].__bm_OPEN, line: 1, text: __bm_OPEN(). See next exception for more information. Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage Personnes] n'est pas une fonction (DataSet[ScriptedDataSet].__bm_OPEN#2) Script source: DataSet[ScriptedDataSet].__bm_OPEN, line: 1, text: __bm_OPEN() org.eclipse.birt.data.engine.core.DataException: A BIRT exception occurred: Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage Personnes] n'est pas une fonction (DataSet[ScriptedDataSet].__bm_OPEN#2) Script source: DataSet[ScriptedDataSet].__bm_OPEN, line: 1, text: __bm_OPEN(). See next exception for more information. Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage Personnes] n'est pas une fonction (DataSet[ScriptedDataSet].__bm_OPEN#2) Script source: DataSet[ScriptedDataSet].__bm_OPEN, line: 1, text: __bm_OPEN() at org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:113) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:531) at org.eclipse.birt.data.engine.script.JSMethodRunner.runScript(JSMethodRunner.java:79) at org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor.handleJS(DtEScriptExecutor.java:71) at org.eclipse.birt.report.engine.script.internal.DataSetScriptExecutor.handleJS(DataSetScriptExecutor.java:159) at org.eclipse.birt.report.engine.script.internal.ScriptDataSetScriptExecutor.handleOpen(ScriptDataSetScriptExecutor.java:66) at org.eclipse.birt.data.engine.impl.ScriptDataSetRuntime.open(ScriptDataSetRuntime.java:68) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.open(PreparedScriptDSQuery.java:204) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:180) at org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.execute(PreparedQuery.java:711) at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:110) at org.eclipse.birt.report.engine.data.dte.DteDataEngine.execute(DteDataEngine.java:210) at org.eclipse.birt.report.engine.executor.QueryItemExecutor.openResultSet(QueryItemExecutor.java:62) at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:122) at org.eclipse.birt.report.engine.executor.ReportExecutorVisitor.visitTableItem(ReportExecutorVisitor.java:187) at org.eclipse.birt.report.engine.ir.TableItemDesign.accept(TableItemDesign.java:69) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:125) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:89) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:175) at test.BIRTTest.main(BIRTTest.java:26) Caused by: org.eclipse.birt.core.exception.CoreException: Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage Personnes] n'est pas une fonction (DataSet[ScriptedDataSet].__bm_OPEN#2) Script source: DataSet[ScriptedDataSet].__bm_OPEN, line: 1, text: __bm_OPEN() at org.eclipse.birt.core.script.JavascriptEvalUtil.wrapRhinoException(JavascriptEvalUtil.java:220) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:93) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:527) ... 18 more Caused by: org.mozilla.javascript.EcmaError: TypeError: [JavaPackage Personnes] n'est pas une fonction (DataSet[ScriptedDataSet].__bm_OPEN#2) at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3240) at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3230) at org.mozilla.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3246) at org.mozilla.javascript.ScriptRuntime.typeError1(ScriptRuntime.java:3258) at org.mozilla.javascript.ScriptRuntime.notFunctionError(ScriptRuntime.java:3317) at org.mozilla.javascript.ScriptRuntime.notFunctionError(ScriptRuntime.java:3308) at org.mozilla.javascript.ScriptRuntime.newObject(ScriptRuntime.java:2057) at org.mozilla.javascript.gen.c5._c1(DataSet[ScriptedDataSet].__bm_OPEN:2) at org.mozilla.javascript.gen.c5.call(DataSet[ScriptedDataSet].__bm_OPEN) at org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRuntime.java:105) at org.mozilla.javascript.gen.c6._c0(DataSet[ScriptedDataSet].__bm_OPEN:1) at org.mozilla.javascript.gen.c6.call(DataSet[ScriptedDataSet].__bm_OPEN) at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:304) at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2769) at org.mozilla.javascript.gen.c6.call(DataSet[ScriptedDataSet].__bm_OPEN) at org.mozilla.javascript.gen.c6.exec(DataSet[ScriptedDataSet].__bm_OPEN) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:86) ... 19 more 29-juin-2006 9:26:08 org.eclipse.birt.data.engine.executor.cache.SmartCache populateData INFO: memoryCacheRowCount is 20000 29-juin-2006 9:26:08 org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor handleJS ATTENTION: A BIRT exception occurred: Error evaluating Javascript expression. Script engine error: ReferenceError: "ligneEnCours" n'est pas défini (DataSet[ScriptedDataSet].__bm_FETCH#2) Script source: DataSet[ScriptedDataSet].__bm_FETCH, line: 1, text: __bm_FETCH(). See next exception for more information. Error evaluating Javascript expression. Script engine error: ReferenceError: "ligneEnCours" n'est pas défini (DataSet[ScriptedDataSet].__bm_FETCH#2) Script source: DataSet[ScriptedDataSet].__bm_FETCH, line: 1, text: __bm_FETCH() org.eclipse.birt.data.engine.core.DataException: A BIRT exception occurred: Error evaluating Javascript expression. Script engine error: ReferenceError: "ligneEnCours" n'est pas défini (DataSet[ScriptedDataSet].__bm_FETCH#2) Script source: DataSet[ScriptedDataSet].__bm_FETCH, line: 1, text: __bm_FETCH(). See next exception for more information. Error evaluating Javascript expression. Script engine error: ReferenceError: "ligneEnCours" n'est pas défini (DataSet[ScriptedDataSet].__bm_FETCH#2) Script source: DataSet[ScriptedDataSet].__bm_FETCH, line: 1, text: __bm_FETCH() at org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:113) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:531) at org.eclipse.birt.data.engine.script.JSMethodRunner.runScript(JSMethodRunner.java:79) at org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor.handleJS(DtEScriptExecutor.java:71) at org.eclipse.birt.report.engine.script.internal.DataSetScriptExecutor.handleJS(DataSetScriptExecutor.java:159) at org.eclipse.birt.report.engine.script.internal.ScriptDataSetScriptExecutor.handleFetch(ScriptDataSetScriptExecutor.java:100) at org.eclipse.birt.data.engine.impl.ScriptDataSetRuntime.fetch(ScriptDataSetRuntime.java:84) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery.java:217) at org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch(OdiAdapter.java:135) at org.eclipse.birt.data.engine.executor.cache.RowResultSet.next(RowResultSet.java:85) at org.eclipse.birt.data.engine.executor.cache.SmartCache.populateData(SmartCache.java:276) at org.eclipse.birt.data.engine.executor.cache.SmartCache.initInstance(SmartCache.java:204) at org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:134) at org.eclipse.birt.data.engine.executor.CachedResultSet.initOdiResultSet(CachedResultSet.java:1613) at org.eclipse.birt.data.engine.executor.CachedResultSet.pass(CachedResultSet.java:1432) at org.eclipse.birt.data.engine.executor.CachedResultSet.populateResultSet(CachedResultSet.java:234) at org.eclipse.birt.data.engine.executor.CachedResultSet.<init>(CachedResultSet.java:125) at org.eclipse.birt.data.engine.executor.CandidateQuery.execute(CandidateQuery.java:83) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:183) at org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.execute(PreparedQuery.java:711) at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:110) at org.eclipse.birt.report.engine.data.dte.DteDataEngine.execute(DteDataEngine.java:210) at org.eclipse.birt.report.engine.executor.QueryItemExecutor.openResultSet(QueryItemExecutor.java:62) at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:122) at org.eclipse.birt.report.engine.executor.ReportExecutorVisitor.visitTableItem(ReportExecutorVisitor.java:187) at org.eclipse.birt.report.engine.ir.TableItemDesign.accept(TableItemDesign.java:69) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:125) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:89) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:175) at test.BIRTTest.main(BIRTTest.java:26) Caused by: org.eclipse.birt.core.exception.CoreException: Error evaluating Javascript expression. Script engine error: ReferenceError: "ligneEnCours" n'est pas défini (DataSet[ScriptedDataSet].__bm_FETCH#2) Script source: DataSet[ScriptedDataSet].__bm_FETCH, line: 1, text: __bm_FETCH() at org.eclipse.birt.core.script.JavascriptEvalUtil.wrapRhinoException(JavascriptEvalUtil.java:220) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:93) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:527) ... 28 more Caused by: org.mozilla.javascript.EcmaError: ReferenceError: "ligneEnCours" n'est pas défini (DataSet[ScriptedDataSet].__bm_FETCH#2) at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3240) at org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3230) at org.mozilla.javascript.ScriptRuntime.notFoundError(ScriptRuntime.java:3303) at org.mozilla.javascript.ScriptRuntime.nameOrFunction(ScriptRuntime.java:1632) at org.mozilla.javascript.ScriptRuntime.name(ScriptRuntime.java:1571) at org.mozilla.javascript.gen.c7._c1(DataSet[ScriptedDataSet].__bm_FETCH:2) at org.mozilla.javascript.gen.c7.call(DataSet[ScriptedDataSet].__bm_FETCH) at org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRuntime.java:105) at org.mozilla.javascript.gen.c8._c0(DataSet[ScriptedDataSet].__bm_FETCH:1) at org.mozilla.javascript.gen.c8.call(DataSet[ScriptedDataSet].__bm_FETCH) at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:304) at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2769) at org.mozilla.javascript.gen.c8.call(DataSet[ScriptedDataSet].__bm_FETCH) at org.mozilla.javascript.gen.c8.exec(DataSet[ScriptedDataSet].__bm_FETCH) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:86) ... 29 more 29-juin-2006 9:26:08 org.eclipse.birt.report.engine.script.internal.ScriptExecutor addException ATTENTION: data.engine.BadFetchScriptReturnType org.eclipse.birt.data.engine.core.DataException: data.engine.BadFetchScriptReturnType at org.eclipse.birt.report.engine.script.internal.ScriptDataSetScriptExecutor.handleFetch(ScriptDataSetScriptExecutor.java:109) at org.eclipse.birt.data.engine.impl.ScriptDataSetRuntime.fetch(ScriptDataSetRuntime.java:84) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery.java:217) at org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch(OdiAdapter.java:135) at org.eclipse.birt.data.engine.executor.cache.RowResultSet.next(RowResultSet.java:85) at org.eclipse.birt.data.engine.executor.cache.SmartCache.populateData(SmartCache.java:276) at org.eclipse.birt.data.engine.executor.cache.SmartCache.initInstance(SmartCache.java:204) at org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:134) at org.eclipse.birt.data.engine.executor.CachedResultSet.initOdiResultSet(CachedResultSet.java:1613) at org.eclipse.birt.data.engine.executor.CachedResultSet.pass(CachedResultSet.java:1432) at org.eclipse.birt.data.engine.executor.CachedResultSet.populateResultSet(CachedResultSet.java:234) at org.eclipse.birt.data.engine.executor.CachedResultSet.<init>(CachedResultSet.java:125) at org.eclipse.birt.data.engine.executor.CandidateQuery.execute(CandidateQuery.java:83) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:183) at org.eclipse.birt.data.engine.impl.PreparedQuery$Executor.execute(PreparedQuery.java:711) at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:110) at org.eclipse.birt.report.engine.data.dte.DteDataEngine.execute(DteDataEngine.java:210) at org.eclipse.birt.report.engine.executor.QueryItemExecutor.openResultSet(QueryItemExecutor.java:62) at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:122) at org.eclipse.birt.report.engine.executor.ReportExecutorVisitor.visitTableItem(ReportExecutorVisitor.java:187) at org.eclipse.birt.report.engine.ir.TableItemDesign.accept(TableItemDesign.java:69) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:125) at org.eclipse.birt.report.engine.executor.ReportExecutor.execute(ReportExecutor.java:89) at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:175) at test.BIRTTest.main(BIRTTest.java:26) 29-juin-2006 9:26:08 org.eclipse.birt.data.engine.executor.cache.SmartCache populateData INFO: MemoryCache is used 29-juin-2006 9:26:08 org.eclipse.birt.data.engine.executor.cache.SmartCache populateData INFO: Time consumed by cache is: 0 second |
|
|
00
|
|
|
#4 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Bon l'erreur vient de cette ligne :
Code :
lesPersonnesClass = new Packages.Personnes(); Sinon mais un constructeur bidon dans la classe Personnes : Et réessaye. |
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : mai 2006 Messages : 48 ![]() |
Salut,
oui j'ai bien laissé la ligne tel quel : lesPersonnesClass = new Packages.Personnes(); Bon et bien rien de nouveau à l'horizon le stacktrace est toujours identique pas de changement dans l'erreur, j'ai bien recompiler la nouvelle version de Personnes.java et le .class à bien été copier dans le bon répertoire. Y-aurait-il une autre piste à suivre ? |
|
|
00
|
|
|
#6 |
|
Futur Membre du Club
![]() Inscription : mai 2006 Messages : 48 ![]() |
Salut,
J'ai trouvé la source du problème, en fait j'avais une ligne package test; dans ma classe java et de ce fait il ne trouvait pas le .class je suppose qu'il faut créer l'arborescence correcte dans le WEB-INF pour que le rapport puisse le trouvé, et si oui faut-il changer la ligne lesPersonnesClass = new Packages.Personnes(); par : lesPersonnesClass = new [lepathcomplet].Personnes(); Encore merci pour ton aide. maxscljava |
|
|
00
|
|
|
#7 | ||||||
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Perso j'ai plus besoin de copier le fichier.
J'ai un exemple qui diffère légèrement. Peut-être qu'il fonctionnera. Personnes.java : Code :
Open : Code :
Code :
[EDIT]Ah ben de rien. Je pensais que tu n'avais pas fait de packages spécifiques.[/EDIT] |
||||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com