我尝试将集合对象从Java代码传递到jrxml,但jrxml集合对象大小显示为零。
Java代码
ReportExecutionRequest request = new ReportExecutionRequest();
ReportParameter parameter2 = new ReportParameter();
parameter2.setName("EXCEPTION_CATEGORY_ID");
List<String> values2 = new ArrayList<String>();
values2.add("1");
values2.add("3");
values2.add("4");
values2.add("10");
parameter2.setValues(values2);
ReportParameters parameters = new ReportParameters();
List<ReportParameter> reportParameters = new ArrayList<ReportParameter>();
reportParameters.add(parameter2);
parameters.setReportParameters(reportParameters);
JRXML:
<parameter name="EXCEPTION_CATEGORY_ID" class="java.util.Collection"/>
此外,如果使用上面相同的java代码传递字符串,并使用逗号分隔字符串并使用变量在jrxml中将其标记为不起作用。
<variable name="CatId" class="java.util.Collection">
<variableExpression><![CDATA[$P{EXCEPTION_CATEGORY_ID}.split(",")]]/>
</variable>