使用外部化连接配置文件查看 birt 报告时出现以下错误。
org.eclipse.birt.report.engine.api.EngineException: Error happened while running the report.
..............................
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.LinkageError: Failed to link org/eclipse/core/resources/IResource (Module "deployment.qv.war:main" from Service Module Loader)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:437)
at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:269)
.......................................................
at org.eclipse.birt.report.engine.presentation.ReportDocumentBuilder.build(ReportDocumentBuilder.java:258)
at org.eclipse.birt.report.engine.api.impl.RunTask.doRun(RunTask.java:269)
... 73 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/core/runtime/jobs/ISchedulingRule
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:353)
at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:432)
... 113 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.core.runtime.jobs.ISchedulingRule from [Module "deployment.qv.war:main" from Service Module Loader]
at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:205)
at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:455)
在beforeOpen脚本上,我有一个以下脚本
var myresourcefolder = reportContext.getDesignHandle().getResourceFolder();
this.setExtensionProperty("OdaConnProfileStorePath", myresourcefolder + "/reports/reportName.cps")
我关注了this创建报告时。我可能会错过什么?
最佳答案
如果您使用任务来呈现报表,则可以设置与其的 JDBC 连接,而不必配置每个报表来使用它:
IReportRunnable runnable = engine.openReportDesign(design);
IRunAndRenderTask task = engine.createRunAndRenderTask(runnable);
//Where 'conn' is java.sql.Connection
task.getAppContext().put("OdaJDBCDriverPassInConnection", conn);
task.run();
另请参阅:
关于javascript - 查看使用外部化连接配置文件的 birt 报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36112818/