2·········
 ireport中pdf预览错误估计是不支持那个格式 UniGB-UCS2-H···
  但不知道在哪里改····
   -_-####
    错误提示如下······
pdfExporting Exporting pdf to file... 
"D:\tomcat5.5.9\webapps\ROOT\ireport\xueji.pdf" Error exporting print... ExceptionConverter: java.io.UnsupportedEncodingException: UniGB-UCS2H     
at sun.io.Converters.getConverterClass(Converters.java:215)     at sun.io.Converters.newConverter(Converters.java:248)     at sun.io.CharToByteConverter.getConverter(CharToByteConverter.java:64)     at java.lang.StringCoding.encode(StringCoding.java:376)     at java.lang.String.getBytes(String.java:573)     at com.lowagie.text.pdf.PdfEncodings.convertToBytes(Unknown Source)     at com.lowagie.text.pdf.Type1Font.<init>(Unknown Source)     at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source)     at net.sf.jasperreports.engine.export.JRPdfExporter.getChunk(JRPdfExporter.java:1429)     at net.sf.jasperreports.engine.export.JRPdfExporter.getPhrase(JRPdfExporter.java:1406)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportText(JRPdfExporter.java:1694)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportPage(JRPdfExporter.java:455)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:395)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java:262)     at it.businesslogic.ireport.IReportCompiler.run(IReportCompiler.java:745)     at java.lang.Thread.run(Thread.java:534)  NESTED BY : ExceptionConverter: java.io.UnsupportedEncodingException: UniGB-UCS2-H     at sun.io.Converters.getConverterClass(Converters.java:215)     at sun.io.Converters.newConverter(Converters.java:248)     at sun.io.CharToByteConverter.getConverter(CharToByteConverter.java:64)     at java.lang.StringCoding.encode(StringCoding.java:376)     at java.lang.String.getBytes(String.java:573)     at com.lowagie.text.pdf.PdfEncodings.convertToBytes(Unknown Source)     at com.lowagie.text.pdf.Type1Font.<init>(Unknown Source)     at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source)     at net.sf.jasperreports.engine.export.JRPdfExporter.getChunk(JRPdfExporter.java:1429)     at net.sf.jasperreports.engine.export.JRPdfExporter.getPhrase(JRPdfExporter.java:1406)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportText(JRPdfExporter.java:1694)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportPage(JRPdfExporter.java:455)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:395)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java:262)     at it.businesslogic.ireport.IReportCompiler.run(IReportCompiler.java:745)     at java.lang.Thread.run(Thread.java:534)  NESTED BY : net.sf.jasperreports.engine.JRException: Could not load the following font :  pdfFontName   : Helvetica pdfEncoding   : UniGB-UCS2-H isPdfEmbedded : false     at net.sf.jasperreports.engine.export.JRPdfExporter.getChunk(JRPdfExporter.java:1454)     at net.sf.jasperreports.engine.export.JRPdfExporter.getPhrase(JRPdfExporter.java:1406)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportText(JRPdfExporter.java:1694)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportPage(JRPdfExporter.java:455)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:395)     at net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java:262)     at it.businesslogic.ireport.IReportCompiler.run(IReportCompiler.java:745)     at java.lang.Thread.run(Thread.java:534) Caused by: ExceptionConverter: java.io.UnsupportedEncodingException: UniGB-UCS2-H Running time : 828 Executing: D:\Program Files\Adobe\Acrobat 6.0\Reader\AcroRd32.exe D:\tomcat5.5.9\webapps\ROOT\ireport\xueji.pdf

解决方案 »

  1.   

    从水园看过来的;
    但JAVA不熟;汗……
      

  2.   

    第一、第二个问题基本解决了···
     没有报错了·······
       现在问题是没有调用pdf的工具而是直接在浏览器中显示为乱码········
        我换一个报表进行调用则弹出打开,下载的对话框········
         这个应该怎么解决呀·····
      

  3.   

    回复人: zxhong(红透半边天) ( ) 信誉:309  2005-06-17 14:01:00  得分: 0  
     
     
       没有文档和例子吗?没用过类似工具
      
    ----------------------------------------------------------
    文档和例子都看了·····
     我是按照上面的做的·····
      还搜索了很多相关的帖子一种也有和我一样问题的但是都没有提供解决的方法····
       至于工具我会用······
      
      

  4.   

    我换一个报表进行调用则弹出打开,下载的对话框········
    是同一个jsp吗
      

  5.   

    你把pageContext的值改了
    response.setContentType("application/XLS");
    太不小心了吧?
      

  6.   

    回复人: indenty(晴空万里) ( ) 信誉:100  2005-06-17 14:51:00  得分: 0  
     
     
    你把pageContext的值改了
    response.setContentType("application/XLS");
    太不小心了吧?
    ------------------------------
    呵呵···
     这个是我测试的时候改的···
      早就改回来了····
        这个不是问题····
          response.setContentType("application/pdf");
      
     
      

  7.   

    还有····
     就是我如果要以其他形式显示的话应该就修改response.setContentType("application/pdf");吧··
      以html形式显示改为response.setContentType("text/html");对吗·····
       以xls形式显示是改为什么呢···
         这样?response.setContentType("application/ vnd.ms-excel");
      

  8.   


    excle格式:
    response.setContentType("application/vnd.ms-excel");
    //斜线后面不能够空格。
    //mime映射可以对照 tomcat-home\conf\web.xml,里面有各种文件的mime映射 //我这几天不能够上网了:(((
      

  9.   

    波哥哥····
     终于看到你了·······
      为什么它不调用pdf的工具而是直接在浏览器中显示为乱码呢········
       要怎么解决呀········
        :(
      

  10.   

    PDF乱码原因是“%>
    <%”之间有回车,要改为“%><%”,然后要保证最后一个%>之后没有没有任何其他字符,包括空格和回车。
    建议文件头改为:
    <%@ page contentType="application/pdf;charset=GB2312" import="net.sf.jasperreports.engine.*,java.util.*,java.io.*,java.sql.*" %><%
    //报表编译之后生成的.jasper 文件的存放位置
    ……
      

  11.   

    谢谢大家的回复····
     pdf格式的搞定了········
      

  12.   

    现在有问题的是html格式的问题了········
     代码如下···
       各位大哥哥能看看哪里有错吗······
         感激不尽······<%@ page import="net.sf.jasperreports.engine.*" %>
    <%@ page import="java.util.*" %>
    <%@ page import="java.io.*" %>
    <%@ page import="java.sql.*" %>
    <%
        File reportFile = new File(application.getRealPath("/report/xueji.jasper"));
        JasperReport jasperReport = (JasperReport)JRLoader.loadObject(reportFile.getPath());
        Map parameters = new HashMap();
        parameters.put("baiji", "c1");
    //    parameters.put("BaseDir", reportFile.getParentFile());        Class.forName("org.gjt.mm.mysql.Driver");
        Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/xueji","root","root");
        JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, conn);
              
        JRHtmlExporter exporter = new JRHtmlExporter();
        StringBuffer sbuffer = new StringBuffer();    Map imagesMap = new HashMap();
        session.setAttribute("IMAGES_MAP", imagesMap);
        
        exporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);
        exporter.setParameter(JRExporterParameter.OUTPUT_WRITER,out);
        exporter.setParameter(JRHtmlExporterParameter.IMAGES_MAP,imagesMap);
        exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI,"image.jsp?image=");    
        exporter.exportReport();
        conn.close();
    %>
      

  13.   

    错误信息如下:org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 5 in the jsp file: /ireport/ireport_html.jsp
    Generated servlet error:
    JRLoader cannot be resolvedAn error occurred at line: 5 in the jsp file: /ireport/ireport_html.jsp
    Generated servlet error:
    JRHtmlExporter cannot be resolved or is not a typeAn error occurred at line: 5 in the jsp file: /ireport/ireport_html.jsp
    Generated servlet error:
    JRHtmlExporter cannot be resolved or is not a typeAn error occurred at line: 5 in the jsp file: /ireport/ireport_html.jsp
    Generated servlet error:
    JRHtmlExporterParameter.IMAGES_MAP cannot be resolved or is not a typeAn error occurred at line: 5 in the jsp file: /ireport/ireport_html.jsp
    Generated servlet error:
    JRHtmlExporterParameter.IMAGES_URI cannot be resolved or is not a type
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:397)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:293)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
      

  14.   

    缺少import类:
    net.sf.jasperreports.engine.util.JRLoader,
    net.sf.jasperreports.engine.export.JRHtmlExporter,
    net.sf.jasperreports.engine.export.JRHtmlExporterParameter
      

  15.   

    import="net.sf.jasperreports.engine.export.*"
      

  16.   

    字体的问题只要把iTextAsian.jar,itext-1.02b.jar加到工程里面去就不会有问题!
      

  17.   

    回复人: javathinker(一声叹息) ( ) 信誉:100  2005-06-20 11:53:00  得分: 0  
     
     
       字体的问题只要把iTextAsian.jar,itext-1.02b.jar加到工程里面去就不会有问题!
      
    ---------------------------------------
    谢谢大家···
     字体问题已经解决了···
      而且用pdf显示也已经正常了····· 
      

  18.   

    TO:回复人: nanman(南蛮—300万人使用的最强五笔作者) and 回复人: tom2005(快乐着)信誉:120 我已经加了import了····
     现在依然报错···
      运行时错误····
       :(javax.servlet.ServletException: D:\tomcat5.5.9\webapps\ROOT\report\xueji.jasper
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
    org.apache.jsp.ireport.ireport_005fhtml_jsp._jspService(org.apache.jsp.ireport.ireport_005fhtml_jsp:88)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause net.sf.jasperreports.engine.JRException: D:\tomcat5.5.9\webapps\ROOT\report\xueji.jasper
    net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:73)
    net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:62)
    org.apache.jsp.ireport.ireport_005fhtml_jsp._jspService(org.apache.jsp.ireport.ireport_005fhtml_jsp:56)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)是什么原因呀····
      

  19.   

    xueji.jasper这个路径对吗
    javax.servlet.ServletException: D:\tomcat5.5.9\webapps\ROOT\report\xueji.jasper一般是找不到这个文件
      

  20.   

    有好多朋友都发短消息给我要我告之怎么解决的问题···
     下面是我总结的一些东西···
       希望对搜索到这个帖子的朋友有所帮助······
         :)http://xiaoya317.blogchina.com/2006282.html