从tabledatamodel生成动态jasper报告

时间:2011-09-14 05:57:59

标签: java dynamic-jasper

我正在尝试使用tabledatamodel生成一个jasper报告,如

JRDataSource dataSource = new JRTableModelDataSource(model);
JasperPrint jp = DynamicJasperHelper.generateJasperPrint(dr, new ClassicLayoutManager(), dataSource);


        JasperViewer.viewReport(jp);

当我运行此代码时,如果有人可以帮我解决此问题,我会收到以下错误。

线程“main”中的异常java.lang.NoSuchMethodError:ar.com.fdvs.dj.domain.DynamicJasperDesign.setPrintOrder(B)V         at ar.com.fdvs.dj.core.DJJRDesignHelper.getNewDesign(DJJRDesignHelper.java:69)         在ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperDesign(DynamicJasperHelper.java:207)         在ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperReport(DynamicJasperHelper.java:535)         在ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperReport(DynamicJasperHelper.java:518)         在ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperPrint(DynamicJasperHelper.java:283)         在ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperPrint(DynamicJasperHelper.java:236)

2 个答案:

答案 0 :(得分:5)

这与您正在使用的jasper报告版本有关,请尝试降级。该问题已报告here

答案 1 :(得分:1)

问题主要是因为jar文件不匹配。这取决于您使用DynamicJasper的Jasper版本。在DynamicJasper download page上,您可以在此处找到有关兼容性版本的信息摘要:

  • DJ 5.x适用于JasperReposrts 4.6。+
  • 5.x和6.0.x. (需要JDK 1.6)
  • 使用JasperReports 4.1到4.5.x的DJ 4.x工作人员
  • DJ 3.0.5适用于JR 3.5至4.0

对于将来的更新,请参阅http://dynamicjasper.com/download/以获取版本兼容性。