我使用iReport eclipse插件创建了一个.jrxml文件。它需要json作为输入。我在eclipse中创建了jsonDataAdaptor来导出报告。现在我想用java做同样的事情,而不是iReport。
我有一个.jrxml文件,我正在使用以下方法编译该文件: JasperCompileManager.compileReportToFile
在.jrxml文件中,我为json创建了一些字段,并在textField中使用过。
<field name="username" class="java.lang.String">
<fieldDescription><![CDATA[username]]></fieldDescription>
</field>
<field name="pwd" class="java.lang.String">
<fieldDescription><![CDATA[pwd]]></fieldDescription>
</field>
我在test.json中有用户名和密码,它放在我的本地驱动器中与.jrxml文件相同的路径。
我的dataAdapter(与.jrxml文件位于同一文件夹中):
<?xml version="1.0" encoding="UTF-8" ?>
<jsonDataAdapter class="net.sf.jasperreports.data.json.JsonDataAdapterImpl">
<name>jsonDataAdaptor</name>
<fileName>C:\test\test.json</fileName>
<useConnection>false</useConnection>
<timeZone xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
dirty="false" DSTSavings="0" raw-offset="19800000"
xsi:type="java:sun.util.calendar.ZoneInfo">
<ID>Asia/Calcutta</ID>
<display-name>India Standard Time</display-name>
</timeZone>
<locale country="US" language="en" />
<selectExpression></selectExpression>
<datePattern></datePattern>
<numberPattern></numberPattern>
</jsonDataAdapter>
问题是,当我将相同的内容导出到html时,我将值变为null。