|
|||
|
Hey,
I am using BIRT Report Engine api. I have put my java classes which I access as scripted data source in EngineHome/lib. However rhino is still unable to access those classes. Where should I put my classes ? Currently I am using SimpleClass.java (Standard Example for Scripted data source) The error that I keep getting are 2009-07-01 06:08:52.733::INFO: Started SelectChannelConnector @ 0.0.0.0:8080 Jul 1, 2009 6:09:15 AM org.eclipse.birt.data.engine.impl.DataEngineImpl <init> INFO: Data Engine starts up Jul 1, 2009 6:09:15 AM org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor handleJS WARNING: A BIRT exception occurred: Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage SimpleClass] is not a function. (DataSet[Favorite].__bm_OPEN#2) Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: __bm_OPEN(). See next exception for more information. Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage SimpleClass] is not a function. (DataSet[Favorite].__bm_OPEN#2) Script source: DataSet[Favorite].__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 SimpleClass] is not a function. (DataSet[Favorite].__bm_OPEN#2) Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: __bm_OPEN(). See next exception for more information. Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage SimpleClass] is not a function. (DataSet[Favorite].__bm_OPEN#2) Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: __bm_OPEN() at org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:118) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:680) 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:79) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.open(PreparedScriptDSQuery.java:244) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:220) at org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:767) at org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:217) at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:157) at org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init>(QueryResultSet.java:83) at org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:155) at org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:111) at org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:182) at org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1683) at org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:76) at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:61) at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:45) at org.eclipse.birt.report.engine.internal.executor.emitter.ReportItemEmitterExecutor.execute(ReportItemEmitterExecutor.java:45) at org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor.java:42) at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:63) at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:85) at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:106) at org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:189) at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:224) at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:89) at awsdw.velocity.model.ReportWorker.generateDocument(ReportWorker.java:310) at awsdw.velocity.model.ReportWorker.renderDocumentFile(ReportWorker.java:236) at awsdw.velocity.model.ReportWorker.run(ReportWorker.java:139) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) at java.lang.Thread.run(Thread.java:619) Caused by: org.eclipse.birt.core.exception.CoreException: Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage SimpleClass] is not a function. (DataSet[Favorite].__bm_OPEN#2) Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: __bm_OPEN() at org.eclipse.birt.core.script.JavascriptEvalUtil.wrapRhinoException(JavascriptEvalUtil.java:287) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:102) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:134) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:676) ... 32 more Caused by: org.mozilla.javascript.EcmaError: TypeError: [JavaPackage SimpleClass] is not a function. (DataSet[Favorite].__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.c7._c1(DataSet[Favorite].__bm_OPEN:2) at org.mozilla.javascript.gen.c7.call(DataSet[Favorite].__bm_OPEN) at org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRuntime.java:105) at org.mozilla.javascript.gen.c8._c0(DataSet[Favorite].__bm_OPEN:1) at org.mozilla.javascript.gen.c8.call(DataSet[Favorite].__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.c8.call(DataSet[Favorite].__bm_OPEN) at org.mozilla.javascript.gen.c8.exec(DataSet[Favorite].__bm_OPEN) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:95) ... 34 more Jul 1, 2009 6:09:15 AM org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor handleJS WARNING: A BIRT exception occurred: Error evaluating Javascript expression. Script engine error: ReferenceError: "currentrow" is not defined. (DataSet[Favorite].__bm_FETCH#2) Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: __bm_FETCH(). See next exception for more information. Error evaluating Javascript expression. Script engine error: ReferenceError: "currentrow" is not defined. (DataSet[Favorite].__bm_FETCH#2) Script source: DataSet[Favorite].__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: "currentrow" is not defined. (DataSet[Favorite].__bm_FETCH#2) Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: __bm_FETCH(). See next exception for more information. Error evaluating Javascript expression. Script engine error: ReferenceError: "currentrow" is not defined. (DataSet[Favorite].__bm_FETCH#2) Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: __bm_FETCH() at org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:118) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:680) 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:102) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery.java:257) at org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch(OdiAdapter.java:150) at org.eclipse.birt.data.engine.executor.cache.RowResultSet.next(RowResultSet.java:91) at org.eclipse.birt.data.engine.executor.cache.ExpandableRowResultSet.next(ExpandableRowResultSet.java:62) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.populateData(SmartCacheHelper.java:288) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.initInstance(SmartCacheHelper.java:261) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.getResultSetCache(SmartCacheHelper.java:224) at org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:68) at org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.populateOdiResultSet(PassUtil.java:108) at org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.pass(PassUtil.java:61) at org.eclipse.birt.data.engine.executor.transform.pass.PassManager.doSinglePass(PassManager.java:185) at org.eclipse.birt.data.engine.executor.transform.pass.PassManager.pass(PassManager.java:90) at org.eclipse.birt.data.engine.executor.transform.pass.PassManager.populateResultSet(PassManager.java:72) at org.eclipse.birt.data.engine.executor.transform.ResultSetPopulator.populateResultSet(ResultSetPopulator.java:208) at org.eclipse.birt.data.engine.executor.transform.CachedResultSet.<init>(CachedResultSet.java:132) at org.eclipse.birt.data.engine.executor.CandidateQuery.execute(CandidateQuery.java:106) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:223) at org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:767) at org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:217) at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:157) at org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init>(QueryResultSet.java:83) at org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:155) at org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:111) at org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:182) at org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1683) at org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:76) at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:61) at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:45) at org.eclipse.birt.report.engine.internal.executor.emitter.ReportItemEmitterExecutor.execute(ReportItemEmitterExecutor.java:45) at org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor.java:42) at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:63) at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:85) at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:106) at org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:189) at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:224) at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:89) at awsdw.velocity.model.ReportWorker.generateDocument(ReportWorker.java:310) at awsdw.velocity.model.ReportWorker.renderDocumentFile(ReportWorker.java:236) at awsdw.velocity.model.ReportWorker.run(ReportWorker.java:139) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) at java.lang.Thread.run(Thread.java:619) Caused by: org.eclipse.birt.core.exception.CoreException: Error evaluating Javascript expression. Script engine error: ReferenceError: "currentrow" is not defined. (DataSet[Favorite].__bm_FETCH#2) Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: __bm_FETCH() at org.eclipse.birt.core.script.JavascriptEvalUtil.wrapRhinoException(JavascriptEvalUtil.java:287) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:102) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:134) at org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:676) ... 47 more Caused by: org.mozilla.javascript.EcmaError: ReferenceError: "currentrow" is not defined. (DataSet[Favorite].__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.c9._c1(DataSet[Favorite].__bm_FETCH:2) at org.mozilla.javascript.gen.c9.call(DataSet[Favorite].__bm_FETCH) at org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRuntime.java:105) at org.mozilla.javascript.gen.c10._c0(DataSet[Favorite].__bm_FETCH:1) at org.mozilla.javascript.gen.c10.call(DataSet[Favorite].__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.c10.call(DataSet[Favorite].__bm_FETCH) at org.mozilla.javascript.gen.c10.exec(DataSet[Favorite].__bm_FETCH) at org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:95) ... 49 more Jul 1, 2009 6:09:15 AM org.eclipse.birt.report.engine.script.internal.ScriptExecutor addException WARNING: 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:102) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery.java:257) at org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch(OdiAdapter.java:150) at org.eclipse.birt.data.engine.executor.cache.RowResultSet.next(RowResultSet.java:91) at org.eclipse.birt.data.engine.executor.cache.ExpandableRowResultSet.next(ExpandableRowResultSet.java:62) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.populateData(SmartCacheHelper.java:288) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.initInstance(SmartCacheHelper.java:261) at org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.getResultSetCache(SmartCacheHelper.java:224) at org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:68) at org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.populateOdiResultSet(PassUtil.java:108) at org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.pass(PassUtil.java:61) at org.eclipse.birt.data.engine.executor.transform.pass.PassManager.doSinglePass(PassManager.java:185) at org.eclipse.birt.data.engine.executor.transform.pass.PassManager.pass(PassManager.java:90) at org.eclipse.birt.data.engine.executor.transform.pass.PassManager.populateResultSet(PassManager.java:72) at org.eclipse.birt.data.engine.executor.transform.ResultSetPopulator.populateResultSet(ResultSetPopulator.java:208) at org.eclipse.birt.data.engine.executor.transform.CachedResultSet.<init>(CachedResultSet.java:132) at org.eclipse.birt.data.engine.executor.CandidateQuery.execute(CandidateQuery.java:106) at org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:223) at org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:767) at org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:217) at org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:157) at org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init>(QueryResultSet.java:83) at org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:155) at org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:111) at org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:182) at org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1683) at org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:76) at org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:61) at org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:45) at org.eclipse.birt.report.engine.internal.executor.emitter.ReportItemEmitterExecutor.execute(ReportItemEmitterExecutor.java:45) at org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor.java:42) at org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:63) at org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:85) at org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:106) at org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build( |
|
|||
|
Shivam,
Add your classes with code similar to this: config.getAppContext().put(EngineConstants.APPCONTEXT_CLASSLOADER_KEY, yourclass.class.getClassLoader()); This sets the engine parent classloader to your class. another alternative is to just add to the cp like: config.getAppContext().put(EngineConstants.WEBAPP_CLASSPATH_KEY, "c:/jars/mjo.jar"); where the value is cp string and the config variable is the instance of the EngineConfig. Jason shivam wrote: > Hey, > > I am using BIRT Report Engine api. I have put my java classes which I > access as scripted data source in > EngineHome/lib. However rhino is still unable to access those classes. > Where should I put my classes ? > > Currently I am using SimpleClass.java (Standard Example for Scripted > data source) > > The error that I keep getting are > 2009-07-01 06:08:52.733::INFO: Started SelectChannelConnector @ > 0.0.0.0:8080 > Jul 1, 2009 6:09:15 AM org.eclipse.birt.data.engine.impl.DataEngineImpl > <init> > INFO: Data Engine starts up > Jul 1, 2009 6:09:15 AM > org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor handleJS > WARNING: A BIRT exception occurred: Error evaluating Javascript > expression. Script engine error: TypeError: [JavaPackage SimpleClass] is > not a function. (DataSet[Favorite].__bm_OPEN#2) > Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: > __bm_OPEN(). See next exception for more information. > Error evaluating Javascript expression. Script engine error: TypeError: > [JavaPackage SimpleClass] is not a function. > (DataSet[Favorite].__bm_OPEN#2) > Script source: DataSet[Favorite].__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 SimpleClass] is not a function. > (DataSet[Favorite].__bm_OPEN#2) > Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: > __bm_OPEN(). See next exception for more information. > Error evaluating Javascript expression. Script engine error: TypeError: > [JavaPackage SimpleClass] is not a function. > (DataSet[Favorite].__bm_OPEN#2) > Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: > __bm_OPEN() > at > org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:118) > > at > org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:680) > > 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:79) > > at > org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.open(PreparedScriptDSQuery.java:244) > > at > org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:220) > > at > org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:767) > > at > org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:217) > > at > org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:157) > > at > org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init>(QueryResultSet.java:83) > > at > org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:155) > > at > org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:111) > > at > org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:182) > > at > org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1683) > > at > org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:76) > > at > org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:61) > > at > org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:45) > > at > org.eclipse.birt.report.engine.internal.executor.emitter.ReportItemEmitterExecutor.execute(ReportItemEmitterExecutor.java:45) > > at > org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor.java:42) > > at > org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:63) > > at > org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:85) > > at > org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:106) > > at > org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:189) > > at > org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:224) > at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:89) > at > awsdw.velocity.model.ReportWorker.generateDocument(ReportWorker.java:310) > at > awsdw.velocity.model.ReportWorker.renderDocumentFile(ReportWorker.java:236) > at awsdw.velocity.model.ReportWorker.run(ReportWorker.java:139) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) > > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) > > at java.lang.Thread.run(Thread.java:619) > Caused by: org.eclipse.birt.core.exception.CoreException: Error > evaluating Javascript expression. Script engine error: TypeError: > [JavaPackage SimpleClass] is not a function. > (DataSet[Favorite].__bm_OPEN#2) > Script source: DataSet[Favorite].__bm_OPEN, line: 1, text: > __bm_OPEN() > at > org.eclipse.birt.core.script.JavascriptEvalUtil.wrapRhinoException(JavascriptEvalUtil.java:287) > > at > org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:102) > > at > org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:134) > > at > org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:676) > > ... 32 more > Caused by: org.mozilla.javascript.EcmaError: TypeError: [JavaPackage > SimpleClass] is not a function. (DataSet[Favorite].__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.c7._c1(DataSet[Favorite].__bm_OPEN:2) > at org.mozilla.javascript.gen.c7.call(DataSet[Favorite].__bm_OPEN) > at > org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRuntime.java:105) > at org.mozilla.javascript.gen.c8._c0(DataSet[Favorite].__bm_OPEN:1) > at org.mozilla.javascript.gen.c8.call(DataSet[Favorite].__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.c8.call(DataSet[Favorite].__bm_OPEN) > at org.mozilla.javascript.gen.c8.exec(DataSet[Favorite].__bm_OPEN) > at > org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:95) > > ... 34 more > Jul 1, 2009 6:09:15 AM > org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor handleJS > WARNING: A BIRT exception occurred: Error evaluating Javascript > expression. Script engine error: ReferenceError: "currentrow" is not > defined. (DataSet[Favorite].__bm_FETCH#2) > Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: > __bm_FETCH(). See next exception for more information. > Error evaluating Javascript expression. Script engine error: > ReferenceError: "currentrow" is not defined. > (DataSet[Favorite].__bm_FETCH#2) > Script source: DataSet[Favorite].__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: "currentrow" is not defined. > (DataSet[Favorite].__bm_FETCH#2) > Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: > __bm_FETCH(). See next exception for more information. > Error evaluating Javascript expression. Script engine error: > ReferenceError: "currentrow" is not defined. > (DataSet[Favorite].__bm_FETCH#2) > Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: > __bm_FETCH() > at > org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:118) > > at > org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:680) > > 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:102) > > at > org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery.java:257) > > at > org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch(OdiAdapter.java:150) > > at > org.eclipse.birt.data.engine.executor.cache.RowResultSet.next(RowResultSet.java:91) > > at > org.eclipse.birt.data.engine.executor.cache.ExpandableRowResultSet.next(ExpandableRowResultSet.java:62) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.populateData(SmartCacheHelper.java:288) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.initInstance(SmartCacheHelper.java:261) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.getResultSetCache(SmartCacheHelper.java:224) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:68) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.populateOdiResultSet(PassUtil.java:108) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.pass(PassUtil.java:61) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassManager.doSinglePass(PassManager.java:185) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassManager.pass(PassManager.java:90) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassManager.populateResultSet(PassManager.java:72) > > at > org.eclipse.birt.data.engine.executor.transform.ResultSetPopulator.populateResultSet(ResultSetPopulator.java:208) > > at > org.eclipse.birt.data.engine.executor.transform.CachedResultSet.<init>(CachedResultSet.java:132) > > at > org.eclipse.birt.data.engine.executor.CandidateQuery.execute(CandidateQuery.java:106) > > at > org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:223) > > at > org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:767) > > at > org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:217) > > at > org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:157) > > at > org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init>(QueryResultSet.java:83) > > at > org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:155) > > at > org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:111) > > at > org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:182) > > at > org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1683) > > at > org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:76) > > at > org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:61) > > at > org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:45) > > at > org.eclipse.birt.report.engine.internal.executor.emitter.ReportItemEmitterExecutor.execute(ReportItemEmitterExecutor.java:45) > > at > org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor.java:42) > > at > org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM.java:63) > > at > org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:85) > > at > org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:106) > > at > org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:189) > > at > org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:224) > at org.eclipse.birt.report.engine.api.impl.RunTask.run(RunTask.java:89) > at > awsdw.velocity.model.ReportWorker.generateDocument(ReportWorker.java:310) > at > awsdw.velocity.model.ReportWorker.renderDocumentFile(ReportWorker.java:236) > at awsdw.velocity.model.ReportWorker.run(ReportWorker.java:139) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885) > > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907) > > at java.lang.Thread.run(Thread.java:619) > Caused by: org.eclipse.birt.core.exception.CoreException: Error > evaluating Javascript expression. Script engine error: ReferenceError: > "currentrow" is not defined. (DataSet[Favorite].__bm_FETCH#2) > Script source: DataSet[Favorite].__bm_FETCH, line: 1, text: > __bm_FETCH() > at > org.eclipse.birt.core.script.JavascriptEvalUtil.wrapRhinoException(JavascriptEvalUtil.java:287) > > at > org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:102) > > at > org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScript(JavascriptEvalUtil.java:134) > > at > org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJSAsExpr(ScriptEvalUtil.java:676) > > ... 47 more > Caused by: org.mozilla.javascript.EcmaError: ReferenceError: > "currentrow" is not defined. (DataSet[Favorite].__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.c9._c1(DataSet[Favorite].__bm_FETCH:2) > at org.mozilla.javascript.gen.c9.call(DataSet[Favorite].__bm_FETCH) > at > org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRuntime.java:105) > at org.mozilla.javascript.gen.c10._c0(DataSet[Favorite].__bm_FETCH:1) > at org.mozilla.javascript.gen.c10.call(DataSet[Favorite].__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.c10.call(DataSet[Favorite].__bm_FETCH) > at org.mozilla.javascript.gen.c10.exec(DataSet[Favorite].__bm_FETCH) > at > org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawScript(JavascriptEvalUtil.java:95) > > ... 49 more > Jul 1, 2009 6:09:15 AM > org.eclipse.birt.report.engine.script.internal.ScriptExecutor addException > WARNING: 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:102) > > at > org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery.java:257) > > at > org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch(OdiAdapter.java:150) > > at > org.eclipse.birt.data.engine.executor.cache.RowResultSet.next(RowResultSet.java:91) > > at > org.eclipse.birt.data.engine.executor.cache.ExpandableRowResultSet.next(ExpandableRowResultSet.java:62) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.populateData(SmartCacheHelper.java:288) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.initInstance(SmartCacheHelper.java:261) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper.getResultSetCache(SmartCacheHelper.java:224) > > at > org.eclipse.birt.data.engine.executor.cache.SmartCache.<init>(SmartCache.java:68) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.populateOdiResultSet(PassUtil.java:108) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassUtil.pass(PassUtil.java:61) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassManager.doSinglePass(PassManager.java:185) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassManager.pass(PassManager.java:90) > > at > org.eclipse.birt.data.engine.executor.transform.pass.PassManager.populateResultSet(PassManager.java:72) > > at > org.eclipse.birt.data.engine.executor.transform.ResultSetPopulator.populateResultSet(ResultSetPopulator.java:208) > > at > org.eclipse.birt.data.engine.executor.transform.CachedResultSet.<init>(CachedResultSet.java:132) > > at > org.eclipse.birt.data.engine.executor.CandidateQuery.execute(CandidateQuery.java:106) > > at > org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$ScriptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java:223) > > at > org.eclipse.birt.data.engine.impl.QueryExecutor.execute(QueryExecutor.java:767) > > at > org.eclipse.birt.data.engine.impl.ServiceForQueryResults.executeQuery(ServiceForQueryResults.java:217) > > at > org.eclipse.birt.data.engine.impl.QueryResults.getResultIterator(QueryResults.java:157) > > at > org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init>(QueryResultSet.java:83) > > at > org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:155) > > at > org.eclipse.birt.report.engine.data.dte.DataGenerationEngine.doExecuteQuery(DataGenerationEngine.java:111) > > at > org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.execute(AbstractDataEngine.java:182) > > at > org.eclipse.birt.report.engine.executor.ExecutionContext.executeQuery(ExecutionContext.java:1683) > > at > org.eclipse.birt.report.engine.executor.QueryItemExecutor.executeQuery(QueryItemExecutor.java:76) > > at > org.eclipse.birt.report.engine.executor.TableItemExecutor.execute(TableItemExecutor.java:61) > > at > org.eclipse.birt.report.engine.internal.executor.wrap.WrappedReportItemExecutor.execute(WrappedReportItemExecutor.java:45) > > at > org.eclipse.birt.report.engine.internal.executor.emitter.ReportItemEmitterExecutor.execute(ReportItemEmitterExecutor.java:45) > > at > org.eclipse.birt.report.engine.internal.executor.dup.SuppressDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor.java:42) > > at > org.eclipse.birt.report.engine.layout.html.HTMLBlockStackingLM.layoutNodes(HTMLBlockStackingLM..java:63) > > at > org.eclipse.birt.report.engine.layout.html.HTMLPageLM.layout(HTMLPageLM.java:85) > > at > org.eclipse.birt.report.engine.layout.html.HTMLReportLayoutEngine.layout(HTMLReportLayoutEngine.java:106) > > at > org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build( > |
|
|||
|
Hi Jason ,
Yes I tried that and it worked.Thanks. However the problem is as follows: I am using a third party software that uses BIRT Report Engine api. So I can't make changes to their code . So I was thinking if their is any workaround without adding any changes to the already existing code. I tried including my jars in their jvm's classpath , however rhino is still not able to access them . They have not set the property EngineConstants.WEBAPP_CLASSPATH_KEY. Does including the jar's in the Classpath of JVM is enough ? Sorry if this is naive and I am dragging you into it. This problem is bothering me from a long time. |
|
|||
|
I believe these will be read if you set JVM system properties for
"PARENT_CLASSLOADER" and "webapplication.projectclasspath". Jason shivam wrote: > Hi Jason , Yes I tried that and it worked.Thanks. > > However the problem is as follows: > I am using a third party software that uses BIRT Report Engine api. > So I can't make changes to their code . So I was thinking if their is > any workaround without adding any changes to the already existing code. > I tried including my jars in their jvm's classpath , however rhino is > still not able to access them . > > They have not set the property EngineConstants.WEBAPP_CLASSPATH_KEY. > Does including the jar's in the Classpath of JVM is enough ? > Sorry if this is naive and I am dragging you into it. This problem is > bothering me from a long time. > > |
|
|||
|
Hi Jason ,
There is still one problem that I am facing. My jars are logging using log4j. I have added the classpath to its properties file in the webapplication.classpath and PARENT_CLASSLOADER , however it is not able to access to log4j.properties and I get the error No appender could be found. Any suggestions ? The webapp that is using BIRT api uses log4j too. |
|
|||
|
Shivam,
Can you look at this thread? BIRT logging using log4j Jason shivam wrote: > Hi Jason , There is still one problem that I am facing. > > My jars are logging using log4j. I have added the classpath to its > properties file in the webapplication.classpath and PARENT_CLASSLOADER , > however it is not able to access to log4j.properties and I get the error > No appender could be found. Any suggestions ? > The webapp that is using BIRT api uses log4j too. |
| Thread Tools | |
| Display Modes | |
|
|