0
我有這樣的代碼:的JasperReports:打印的ArrayList到TextField的模板
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
public class TestReport {
public void runReport() {
try {
List<Text> list = new ArrayList<Text>(3);
list.add(new Text("a1"));
list.add(new Text("b1"));
list.add(new Text("c1"));
Map parameters = new HashMap();
parameters.put("text", list);
JasperPrint print = JasperFillManager.fillReport("report1.jasper", parameters, new JRBeanCollectionDataSource(list));
JasperExportManager.exportReportToPdfFile(print, "report1.pdf");
} catch (Exception e) {
e.printStackTrace();
}
}
private class Text {
private String txt;
public Text() {}
public Text(String txt) {this.txt = txt;}
public void setTxt(String txt) {this.txt = txt;}
public String getTxt() {return txt;}
}
public static void main(String args[]) {
new TestReport().runReport();
}
}
我需要生成PDF具有「文本字段」中的「詳細信息」一節。
我嘗試使用 「的JavaBean設置數據源」,但它與崩潰:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at net.sf.jasperreports.engine.util.JRLoader.<clinit>(JRLoader.java:68)
at net.sf.jasperreports.engine.JRPropertiesUtil.loadProperties(JRPropertiesUtil.java:99)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.initProperties(DefaultJasperReportsContext.java:94)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.<init>(DefaultJasperReportsContext.java:71)
at net.sf.jasperreports.engine.DefaultJasperReportsContext.<clinit>(DefaultJasperReportsContext.java:59)
at net.sf.jasperreports.engine.JasperFillManager.getDefaultInstance(JasperFillManager.java:85)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:915)
at TestReport.runReport(TestReport.java:26)
at TestReport.main(TestReport.java:49)
我有不好的模板。你能幫我嗎(或者發送給我示例模板)如何創建像圖像一樣的工作模板?第一個文本字段應該包含「a1」,第二個「b1」,...