首页 > 解决方案 > 无法从我在 BIRT 的报告中引用 Java 类

问题描述

我对 BIRT 很陌生。我正在研究一个 BIRT 项目,我试图在脚本“打开”部分中引用 Java 类,但无法这样做。

我没有收到任何错误,但我无法在数据集预览中看到任何数据。

项目结构

脚本 - 打开

count = 0;

// create instance of
// the GetStockHistory class
gsh = new Packages.de.vogella.birt.stocks.daomock.StockDaoMock(); //cause of error somehow

//Load the List

stock = gsh.getStockValues("Java");

脚本获取

if(count < stock.size()){
       row["columnDate"] = stock.get(count).getDate();
       row["columnOpen"] = stock.get(count).getOpen();
       row["columnHigh"] = stock.get(count).getHigh();
       row["columnLow"] = stock.get(count).getLow();
       row["columnClose"] = stock.get(count).getClose();
       row["columnVolume"] = stock.get(count).getVolume();
       count++;
       return true;
}

return false;

StockDaoMock 是一个返回虚拟值列表的类。引用此博客BIRT 示例应用程序

谁能在这里帮助我,让我知道我做错了什么?为什么我在预览数据集中看不到任何数据。是否有一种特定的方式需要引用 java 类,因为我确信错误仅在该部分的某个地方。如果我删除参考部分并仅硬编码一个字符串,那么它工作正常,我可以在预览中看到它。一旦我通过导入一个 java 类来引用它,事情就搞砸了。

BIRT-4.8

编辑 - -

即使在我的脚本“打开”中也不起作用

importPackage(Packages.de.vogella.birt.stocks.daomock);
gsh = new StockDaoMock();

标签: javabirt

解决方案


BIRT 不直接使用 java 源代码。您必须从您的类生成一个 JAR 并将该 JAR 添加到您的 BIRT 类路径(Window / Preferences / Report Design / Classpath)。


推荐阅读