Java 在jasper报表PDF中获取空值

Java 在jasper报表PDF中获取空值,java,jasper-reports,Java,Jasper Reports,我正在尝试用java实现jasper到pdf报告。将参数设置为jasper report后,我将获得pdf的null值 报告的设计: 生成的PDF文件如下所示: 我的代码是: String outputFile = "D://Test.pdf"; Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("name", "raju"); JRDataSource dat

我正在尝试用java实现jasper到pdf报告。将参数设置为jasper report后,我将获得pdf的
null

报告的设计:

生成的PDF文件如下所示:

我的代码是:

String outputFile = "D://Test.pdf";
Map<String, Object> parameters = new HashMap<String, Object>();
parameters.put("name", "raju");
JRDataSource datasource = new JREmptyDataSource();
JasperReport jasperReport = JasperCompileManager.compileReport("report1.jrxml");
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, datasource);
JasperExportManager.exportReportToPdfFile(jasperPrint, "D://Test.pdf");
String outputFile=“D://Test.pdf”;
映射参数=新的HashMap();
参数。put(“名称”、“raju”);
JRDataSource datasource=新的JREptyDatasource();
JasperReport-JasperReport=JasperCompileManager.compileReport(“report1.jrxml”);
JasperPrint JasperPrint=JasperFillManager.fillReport(jasperReport,参数,数据源);
jaspeexportmanager.exportReportToPdfFile(jasperPrint,“D://Test.pdf”);

在该文本字段表达式中使用
$p{name}
而不是
$F{name}


$p{…}
用于参数,
$F{…}
用于字段(数据源提供的值)。

将Jasper报告源编辑为$p{name}后,我得到以下错误:errornet.sf.jasperreports.engine.design.jrvalidateException:报告设计无效:1。未找到参数:net.sf.jasperreports.engine.design.jractCompiler.verifyDesign(jractCompiler.java:271)处net.sf.jasperreports.engine.design.jractCompiler.CompilerReport(jractCompiler.java:153)处net.sf.jasperreports.engine.JasperCompileManager.compile(JasperCompileManager.java:354)处的名称在com.propolum.com.JasperMain.main(JasperMain.java:70)中,首先应该定义name参数。在JasperSoft Studio中右键单击参数,从弹出窗口中选择创建参数,然后在名称上重命名新添加的参数1。或者您可以在jrxml中通过将
添加到根
jasperReport
元素中来实现。有关参数的更多信息,请参阅上的JasperSoft文档。好的,很好。那么如果你能接受答案,谢谢。