我正在尝试设计一个从 RESTful 资源获取 JSON 数据的报告。据我本机理解,此选项不可用,我必须依赖外部类。我遇到了这个建议。我构建了必要的 jars(基本和依赖项),创建了一个脚本数据源,修改了打开的脚本,然后是一个带有 fetch 脚本的数据集,但无论如何我都无法让它工作。我一直收到以下错误:
...................
A BIRT exception occurred. See next exception for more information.
Error evaluating Javascript expression. Script engine error: TypeError: [JavaPackage com.actuate.json.JSONParser] is not a function, it is object. (/report/data-sources/script-data-source[@id="83"]/method[@name="open"]#5)
Script source: /report/data-sources/script-data-source[@id="83"]/method[@name="open"], line: 0, text:
__bm_OPEN(). (Element ID:1)
at org.eclipse.birt.report.engine.script.internal.DtEScriptExecutor.handleJS(DtEScriptExecutor.java:99
...................................
(我包括了消息中最重要的部分)
那么造成这种错误的原因是什么?没有正确加载类?我试图从属性框中加载资源 我试图在类路径中加载外部 jar 我复制到 scriptlib 文件夹内 没有任何效果。
在打开的脚本中是否需要显式地导入目标类的所有依赖项(尽管 Java 源代码已经这样做了)?
还有其他方法可以实现我的目标吗?(我现在正在敲头几天......)
提前致谢