项目中要做日文报表,PDF格式的。
在ireport设计和预览时正常,但是实际做成的报表不显示日文。
在iReport中设置字体后有如下异常:
説明 The server encountered an internal error () that prevented it from fulfilling this request.例外 javax.servlet.ServletException: Could not load the following font : 
pdfFontName   : Helvetica
pdfEncoding   : UniJIS-UCS2-HW-H
isPdfEmbedded : false
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:523)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
原因 net.sf.jasperreports.engine.JRRuntimeException: Could not load the following font : 
pdfFontName   : Helvetica
pdfEncoding   : UniJIS-UCS2-HW-H
isPdfEmbedded : false
net.sf.jasperreports.engine.export.JRPdfExporter.getFont(JRPdfExporter.java:1465)
net.sf.jasperreports.engine.export.JRPdfExporter.getChunk(JRPdfExporter.java:1368)
net.sf.jasperreports.engine.export.JRPdfExporter.getPhrase(JRPdfExporter.java:1351)
net.sf.jasperreports.engine.export.JRPdfExporter.exportText(JRPdfExporter.java:1708)
net.sf.jasperreports.engine.export.JRPdfExporter.exportElements(JRPdfExporter.java:590)
net.sf.jasperreports.engine.export.JRPdfExporter.exportPage(JRPdfExporter.java:554)
net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:519)
net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java:285)
net.sf.jasperreports.engine.JasperExportManager.exportReportToPdf(JasperExportManager.java:188)
net.sf.jasperreports.engine.JasperRunManager.runReportToPdf(JasperRunManager.java:205)
com.niso.parts.pjyfjy30.Pjyfjy30Action.print(Pjyfjy30Action.java:83)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:274)
org.apache.struts.actions.DispatchAction.execute(DispatchAction.java:194)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
原因 ExceptionConverter: java.io.UnsupportedEncodingException: UniJIS-UCS2-HW-H哪位大虾知道如何解决?谢谢了。

解决方案 »

  1.   

    这个问题见过很多次,由于iText原来的设计没有支持亚洲字体,所以后续制作了一个亚洲字体的包,导入就解决了!包名为iTextAsian.jar参阅http://yaohao.blog.ccidnet.com/blog-htm-do-showone-uid-1771-type-blog-itemid-149097.html
      

  2.   

    这个问题见过很多次,由于iText原来的设计没有支持亚洲字体,所以后续制作了一个亚洲字体的包,导入就解决了!包名为iTextAsian.jar参阅http://yaohao.blog.ccidnet.com/blog-htm-do-showone-uid-1771-type-blog-itemid-149097.html
      

  3.   

    这个问题见过很多次,由于iText原来的设计没有支持亚洲字体,所以后续制作了一个亚洲字体的包,导入就解决了!包名为iTextAsian.jarhttp://yaohao.blog.ccidnet.com/blog-htm-do-showone-uid-1771-type-blog-itemid-149097.html
      

  4.   

    问题解决了,jar包版本问题。
    使用iReport-3.0.0 和 其 bin 目录下的jar包就ok了。
      

  5.   

    问题解决了,jar包版本问题。 
    使用iReport-3.0.0 和 其 bin 目录下的jar包就ok了。 有时候忘了把所有的文字都设置为宋体也会出现上面的异常。