iText.jar,iTextAsian.jar我已经下载放到web-inf/lib下了
我使用JasperRunManager.runReportToHtmlFile(business_rpt.getPath(),parameters,conn);
      JasperRunManager.runReportToPdfFile(business_rpt.getPath(),parameters,conn);
都能正常显示,应该不属于各位说的问题;
由于jasperreport中没有runReportToXlsFile故用上面的程序生成xls文件,各位遇到同样问题的大虾再帮忙看看,不胜感激

解决方案 »

  1.   

    我使用ireport运行可以正常生成xls文件
      

  2.   

    终于成功了
    换成以下代码就可以了,不过还是莫名其妙,不管了,先把项目做完再说
       JasperPrint jasperPrint =
                          JasperFillManager.fillReport(
                          business_rpt.getPath(),
                          parameters,
                          conn
                          );                                      
          response.setContentType("application/vnd.ms-excel");
    JRExporter exporter = new JRXlsExporter();
     
       byte[] bytes;
          ByteArrayOutputStream baos = new ByteArrayOutputStream();
     
          exporter.setParameter(JRExporterParameter.JASPER_PRINT,
                  jasperPrint);
          exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos);
            exporter.exportReport();
            
            bytes = baos.toByteArray();
            if (bytes != null && bytes.length > 0) 
            {
                response.reset();
                response.setContentType("application/vnd.ms-excel");
                response.setHeader("Content-disposition",
                                   "attachment; filename=yourReport.xls");
                response.setContentLength(bytes.length);
                ServletOutputStream ouputStream = response.getOutputStream();
                ouputStream.write(bytes, 0, bytes.length);
                ouputStream.flush();
                ouputStream.close();        }
            conn.close();  
         }
         catch(Exception e){
          throw e;
         }