【发布时间】:2016-08-20 15:04:29
【问题描述】:
我有一个在 NetBeans 8.1 中使用 iReport 和 JasperReport 5.5.0 版插件开发的应用程序。在我的应用程序中,我有一个带有JRBeanCollectionDataSource 的碧玉报告。
LocalDate dateFrom = jDateChooser1.getDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
LocalDate dateUntil = jDateChooser2.getDate().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
List<Registru> regs = db.getRegistreFrom(dateFrom, dateUntil);
Map<String, Object> params = new HashMap<>();
String absolutePath = "....\\rapoarte\\";
params.put("SUBREPORT_DIR", absolutePath);
InputStream in = getClass().getResourceAsStream("/rapoarte/registreListare.jasper");
JasperPrint jp = JasperFillManager.fillReport(in, params, new JRBeanCollectionDataSource(regs,false));
// ... code here
JRBeanCollectionDataSource 接受从数据库返回的报表类列表的参数
public class Registru {
private int id;
private int nrReg;
private LocalDate date;
// ... getters and setters
}
问题是报告中的字段是:
<field name="id" class="java.lang.Integer"/>
<field name="nrReg" class="java.lang.Integer"/>
<field name="date" class="java.time.LocalDate"/>
但是当我编译它时,它给了我一个错误
java.time.LocalDate 无法解析为类型
只有当我输入<field name="date class="java.lang.Object"/> 时它才有效,但我无法格式化日期。
我想格式化"dd-MM-yyyy" 模式的日期。
我必须在 jasper 的类路径中添加一些东西吗?
【问题讨论】:
-
我放弃在netbeans中使用jasper报告插件,开始使用JasperStudio来创建和编译jrxml文件。但是在 NetBeans 下处理所有文件很容易。
标签: java jasper-reports