使用Struts2 + JasperReport 方式生成报表很简单,(1)在Action方法里只需要获得数据,保存在一个List<Map<String, Object>>类型的变量里。(2)定义一个字符串变量,保存要生成的文件名。(3)strtus配置文件里,该Action的result返回类型设为jasper。如:
<action name="exportWoItemExcel" class="com.szair.smartme.ppcp.action.ExportReportAction" method="exportWoItemExcel" >
<result name="success" type="jasper">
<param name="location">
html/ppcp/report/woItemTask.jasper
</param>
<param name="dataSource">woItemTaskList</param>
<param name="format">XLS</param>
<param name="contentDisposition">attachment;filename=${fileName}</param>
</result>
</action>
若报异常 result无Jasper的返回类型,有两种解决方法: