BIRT中的JavaScript错误
我被指派为使用BIRT报告的客户清理一个项目。我已经修复了大多数问题,但仍有一个报告无法正常工作,并且返回了一个错误。错误是:BIRT中的JavaScript错误,java,javascript,eclipse,birt,Java,Javascript,Eclipse,Birt,我被指派为使用BIRT报告的客户清理一个项目。我已经修复了大多数问题,但仍有一个报告无法正常工作,并且返回了一个错误。错误是: Row (id = 1467): + There are errors evaluating script "var fileName = row["Attached_File"]; params["HyperlinkParameter"].value = ImageDecoder.decodeDocs(row["Ecrash_Attach"],fileName);"
Row (id = 1467):
+ There are errors evaluating script "var fileName = row["Attached_File"];
params["HyperlinkParameter"].value = ImageDecoder.decodeDocs(row["Ecrash_Attach"],fileName);":
Wrapped java.lang.NullPointerException (/report/body/table[@id="61"]/detail/row[@id="70"]/cell[@id="71"]/grid[@id="1460"]/row[@id="1462"]/cell[@id="1463"]/table[@id="1464"]/detail/row[@id="1467"]/method[@name="onCreate"]#2)
如果有人需要,我可以发布完整的堆栈跟踪,但现在我会忽略它,因为它很长
以下是decodeDocs方法的来源:
public static String decodeDocs(byte[] source, String fileName) {
String randName = "";
byte[] docSource = null;
if ( Base64.isArrayByteBase64(source) ){
docSource = Base64.decodeBase64(source);
}
documentZipPath = writeByteStreamToFile(source);
randName = writeByteStreamToFile(docSource, fileName);
return randName;
}
这一次我完全迷路了。该错误似乎告诉我脚本第二行有一个错误,即:
var fileName = row["Attached_File"];
params["HyperlinkParameter"].value = ImageDecoder.decodeDocs(row["Ecrash_Attach"],fileName);
这是在报告的OnCreate方法中编写的。任何帮助,甚至线索都将不胜感激。如果您想查看报告,请询问,我将发布该报告的xml。我在BIRT中犯的一个常见错误是访问空报告参数的值。
在您的情况下,
params[“HyperlinkParameter”]
是否可以为空?请不要编辑此帖子。这是BIRT中的JavaScript问题,请参见此处的关键字var?在Java中无法做到这一点您是在尝试修改现有报告,还是从头开始创建新报告?