1) 导入javabean属性, 需要加上包名, 比如com.blog.UserBean. 直接输入class名, 找不到. 对于属性的修改的添加也可以手动在design或者xml界面添加Field.
2) javabean子报表2种做法 , 1是子报表作为参数, 类型是JasperReport, 两个报表可以独立编译. 我只能使用jrxml在内存中编译. 不能使用已经编译好的jasper文件(报错问题没有解决). 可以从数据库中读出jrxml, 导出报表, 不必写入磁盘. 2是子报表路径作为参数, 编译父报表会加载子报表, 没有会编译报错. 使用jrxml和jasper都可以. 但是子报表路径必须已经有编译好的子报表, 缺点是需要把子报表写入磁盘, 再加载才能导出报表.
注意以上两点, 在网上搜资料, 就容易做出来了.
提示:
1. 必须jar包, groovy-all 程序不报错就不需要. jasperreport4.0.2.jar产生的pdf报表, text中字体有的会重叠, 后面加" "可以解决, 随即出现很头疼. 使用3.7.6就没有字体重叠的问题了.
Itext.jar注意, 其他jar包没有, 错误信息一看就知道少了那个类, 判断缺少那个jar包, 可是itext报错
ERROR [STDERR] net.sf.jasperreports.engine.JRException: org.xml.sax.SAXParseException: XML document structures must start and end within the same entity. NoClassDefFoundError
或者 **Error can't cast to Exception...... 或者 XMLParser......., 错误信息生僻, 不宜发现问题.