在JSP中生成html文件后(存在硬盘上的相应文件夹),你可以在jsp中写response.sendRedirect("xxx.html");不知道这样满足你的需求吗?

解决方案 »

  1.   

    <%@ page errorPage="error.jsp" %>
    <%@ page import="com.longtop.bas.rep.*" %>
    <%@ page import="net.sf.jasperreports.engine.*" %>
    <%@ page import="net.sf.jasperreports.engine.util.*" %>
    <%@ page import="net.sf.jasperreports.engine.export.*" %>
    <%@ page import="java.util.*" %>
    <%@ page import="java.io.*" %><%
    File reportFile = new File(application.getRealPath("/reports/WebappReport.jasper")); JasperReport jasperReport = (JasperReport)JRLoader.loadObject(reportFile.getPath()); Map parameters = new HashMap();
    parameters.put("ReportTitle", "Address Report");
    parameters.put("BaseDir", reportFile.getParentFile());

    JasperPrint jasperPrint = 
    JasperFillManager.fillReport(
    jasperReport, 
    parameters, 
    new WebappDataSource()
    );

    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();
    %>