创建的jasper报告为空,不显示错误

时间:2016-06-12 09:23:14

标签: spring-mvc jasper-reports

我在我的应用程序中使用了jasper报告。并且有一个服务可以创建报告,前端请求报告。

但是当我下载PDF时,它是空的。

我尝试将其导出为HTML文档。对于所有场景,响应如下所示。

<html>
   <head>
   <title></title>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
   <style type="text/css">
      a {text-decoration: none}
   </style>
   </head>
   <body text="#000000" link="#000000" alink="#000000" vlink="#000000">
   <table width="100%" cellpadding="0" cellspacing="0" border="0">
   <tr><td width="50%">&nbsp;</td><td align="center">

   <![if IE]>
   <script>
   var links = document.querySelectorAll('link.jrWebFont');
    setTimeout(function(){ if (links) { for (var i = 0; i < links.length;    i++) { links.item(i).href = links.item(i).href; } } }, 0);
   </script>
   <![endif]>
   </td><td width="50%">&nbsp;</td></tr>
       </table>
  </body>
</html>

似乎它也是一个空的html页面。

为什么会这样。我搜索了其他类似的答案,但没有运气。

1 个答案:

答案 0 :(得分:0)

默认情况下,JasperReports输出一个空文档,以防数据源没有返回任何数据。例如,这可能有助于创建仅在子报表还有数据的情况下可见的子报表。

要控制,jasper如何处理空数据源,可以使用** whenNoDataType **属性。

是不同的设置
  • 无页面(默认)Jasper返回空文档
  • 空白页 Jasper返回包含一个空白页的文档
  • 所有版块无详细信息 Jasper渲染整个报告,跳过详细信息区域。
  • 无数据部分 Jasper仅渲染无数据频段。请注意,默认情况下,这不是报告的一部分,需要添加才能使用此选项。