SS2H、easyUI 、ireport 问题!!!

这两天用SS2H、easyUI 、ireport,做了点东西。中间出现了不少问题,在此记录记录。。。

一、easyUI 的编码方式 没有 gbk ,而我项目的编码方式却是gbk。出现中文乱码。我试着用request把数据传出来并显示,却没有乱码,不知道是不是easyUI编码方式的原因?

二、用ireport制作的报表,预览时都有数据。而用html显示出来时,外键 却为null;用pdf显示出来时,不仅外键为null,而且中文没有显示出来;用xml显示也是外键为null;用xls还是外键为null。

解決方案:

1.html報表圖片無法顯示。

 如果要想以HTML形式显示报表内容则还需要在web.xml配置jasperReport自带的一个servlet如下:

Xml代码
  1. <!-- JasperReport包中自带的Servlet,用来做为HTML形式显示报表的时候报表的图片,要在这里配置上,图片在jasperReport包中 -->  
  2.     <servlet>  
  3.         <servlet-name>JasperReportImageServlet</servlet-name>  
  4.         <servlet-class>  
  5.             net.sf.jasperreports.j2ee.servlets.ImageServlet   
  6.         </servlet-class>  
  7.     </servlet>  
  8.   
  9.     <servlet-mapping>  
  10.         <servlet-name>JasperReportImageServlet</servlet-name>  
  11.         <url-pattern>/image</url-pattern>  
  12.     </servlet-mapping>  

action中不需要修改,只需在struts.xml里添加一个HTML不配置如下:

Xml代码
  1. <action name="HTML" class="com.×Action">  
  2.             <result name="success" type="jasper">  
  3.                 <param name="location">/jasper/preson.jasper</param>  
  4.                 <param name="dataSource">presonList</param>  
  5.                 <param name="reportParameters">reportParameter</param>  
  6.                 <param name="format">HTML</param>  
  7.                 <param name="imageServletUrl">  
  8.                     <![CDATA[/image?image=]]>  
  9.                 </param>  
  10.             </result>  
  11.         </action>  

 imageServletUrl的值就是上面的serlvet的路径,该servlet就是生成了一个图形,如果不配置该serlvet则页面上有图片没显示的样子。

相關鏈接:http://www.fengfly.com/plus/view-168657-1.html


2.pdf報表不顯示中文。


1、把iTextAsian.jar亚洲语言包放到项目中 
2、在用iReport做模板设计,在设计pdf报表模板时注意,把所有涉及到的中文显示设置如下:

<textElement>

<font size="14" pdfFontName="STSong-Light" pdfEncoding="UniGB-UCS2-H"/>

</textElement>

三、在添加ireport jar包时,有几个jar包 struts2 中已经 有了,得留意 ,不然会报错的。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值