沫沫金::完美解决jasperreports集成ssh后生成HTML图片红叉叉问题和chart不能显示问题

简介:  px背景图显示红叉叉解决方案 问题描述:使用JasperReport生成Html报表后,数据显示正确px图片不显示,页面整个都是红叉叉          产生原因:在生成HTML页面时JRHtmlExporterParameter.IMAGES_URI参数设置不正确,主要是图片的路径问题。

 px背景图显示红叉叉解决方案

问题描述:使用JasperReport生成Html报表后,数据显示正确px图片不显示,页面整个都是红叉叉

红xx问题,沫沫金提供

 

       产生原因:在生成HTML页面时JRHtmlExporterParameter.IMAGES_URI参数设置不正确,主要是图片的路径问题。由JasperReport生成Html时,那些红叉叉是一个名称为px像素的图片,是内置在jasperreports包中的,在IE显示时以图片的形式显示

       解决办法:根据JasperReport的源代码显示,我们只需要以下两个步骤就能解决了

1、在web.xml中添加如下配置:

 

 
 
  1. <servlet>  
  2.       <servlet-name>ImageServlet</servlet-name>  
  3.       <servlet-class>net.sf.jasperreports.j2ee.servlets.ImageServlet</servlet-class>  
  4. </servlet>  
  5.  
  6. <servlet-mapping>  
  7.       <servlet-name>ImageServlet</servlet-name>  
  8.       <url-pattern>/servlets/image</url-pattern>  
  9. </servlet-mapping>  

2、在调用程序中增加如下代码:

 

 
 
  1. exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "../servlets/image?image=");  

好了,经过上面两个步骤。重启服务,刷新页面立马就正常了

 

完整代码:

 

 
 
  1. /**  
  2.             * 导出html  
  3.             */   
  4.            private static void exportHtml(JasperPrint jasperPrint,String defaultFilename,   
  5.              HttpServletRequest request, HttpServletResponse response) throws IOException, JRException {   
  6.              response.setContentType("text/html;charset=UTF-8"); 
  7.              JRHtmlExporter exporter = new JRHtmlExporter();  
  8.              PrintWriter out = response.getWriter();   
  9.              try { 
  10.                  request.getSession().setAttribute(ImageServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperPrint); 
  11.                  exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);   
  12.                  exporter.setParameter(JRExporterParameter.OUTPUT_WRITER, out);   
  13.                  exporter.setParameter(JRHtmlExporterParameter.IS_USING_IMAGES_TO_ALIGN, Boolean.FALSE); 
  14.                  exporter.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8");  
  15.                  exporter.setParameter(JRHtmlExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS,Boolean.FALSE); 
  16.                  exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "../servlets/image?image="); 
  17.                  exporter.exportReport(); 
  18.              } catch (JRException e) { 
  19.                logger.debug(" 生成html文件失败 .... ...."); 
  20.              } 
  21.            }   

上面的代码就能很完美的生成html了,页面没有红叉叉,chat图也能正常显示了

 

友情提示:

如果生成Excel需要图形的话,你不能使用JRXlsExporter,而是需要使用JExcelApiExporter

抢!正品杜蕾斯人体润滑剂 女用水溶性情趣润滑油可阴交肛交口交

目录
相关文章
|
14天前
利用html2canvas插件自定义生成名片信息并保存图片
这是一个利用html2canvas插件自定义生成名片信息并保存图片,自定义上传头像,自定义输入个人信息内容,自定义图片名称,并将生成的图片保存到本地
31 1
利用html2canvas插件自定义生成名片信息并保存图片
|
4月前
|
移动开发 前端开发 JavaScript
基于 HTML5 和 Canvas 开发的在线图片编辑器
基于 HTML5 和 Canvas 开发的在线图片编辑器
100 0
|
2月前
Twaver-HTML5基础学习(35)Network中ToolTip显示Chart(视图未成功出现)
本文尝试在Twaver-HTML5的Network组件的ToolTip中显示echarts饼图,但未成功,可能与版本有关。
38 4
Twaver-HTML5基础学习(35)Network中ToolTip显示Chart(视图未成功出现)
|
1月前
HTML图片
【10月更文挑战第4天】HTML图片。
27 2
|
2月前
|
前端开发
Twaver-HTML5基础学习(37)network导出图片并下载
本文介绍了如何在Twaver-HTML5中将network导出为图片并提供下载,主要通过将network转换为canvas对象,然后转换为base64编码的图片进行展示和下载。
37 5
|
2月前
|
前端开发 Windows
【前端web入门第一天】02 HTML图片标签 超链接标签 音频标签 视频标签
本文档详细介绍了HTML中的图片、超链接、音频和视频标签的使用方法。首先讲解了`&lt;img&gt;`标签的基本用法及其属性,包括如何使用相对路径和绝对路径。接着介绍了`&lt;a&gt;`标签,用于创建超链接,并展示了如何设置目标页面打开方式。最后,文档还涵盖了如何在网页中嵌入音频和视频文件,包括简化写法及常用属性。
50 13
|
3月前
在线将多张图片拼接起来图工具HTML源码
在线将多张图片拼接成一张图片,多图合一并导出下载。无需本地安装软件。 下载时,使用日期时间作为文件名,规避图片文件名相同造成的覆盖问题;也能省去一部覆盖确认操作 多语言支持
45 0
在线将多张图片拼接起来图工具HTML源码
|
6月前
|
移动开发
uni-app使用v-html输出富文本图片溢出解决
uni-app使用v-html输出富文本图片溢出解决
661 1
|
3月前
|
Python
Python 下载 html 中的 图片
Python 下载 html 中的 图片
31 2
|
4月前
|
数据采集 缓存 自然语言处理
PHP将HTML标签转化为图片
通过这个方法,PHP后端能够实现将HTML内容转化为图片的功能。这种方式虽然牵涉到一些额外的安装和配置,但能够相对灵活且稳定地解冀转换需求,适用于需要在后端动态生成图片的场景。
198 1