om.
om.

Reputation: 4239

How to export JasperReport to HTML?

I have created one .jasper file for my project. I am getting an output in JasperViewer window, but instead of that I want to see it in HTML output form. How can I do that?

Upvotes: 5

Views: 27323

Answers (2)

brett.carr
brett.carr

Reputation: 169

The following code will generate a HTML report:

private DataSource jasperDataSource;
private String jasperReportDir;

public void generateHtmlReport(String reportPath, String reportCode, String outputLocation,
                               Map<String, Object> params) throws Exception
{

    Connection connection=null;
    try
    {
        connection = jasperDataSource.getConnection();

        JasperReport  jasperReport = (JasperReport) JRLoader.loadObject(jasperReportDir + "/" + reportPath + "/" + reportCode + ".jasper");

        params.put(JRParameter.REPORT_FILE_RESOLVER, new SimpleFileResolver(new File(jasperReportDir + "/" + reportPath)));

        JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, connection);

        JasperExportManager.exportReportToHtmlFile(jasperPrint,outputLocation +reportCode+".html");

    }
    finally
    {
        if (connection!=null)
        {
            connection.close();
        }
    }
}

Exports the generated report object into HTML format, placing the result into the second file parameter.

The images are placed as distinct files inside a directory having the same name as the HTML destination file, plus the "_files" suffix.

Upvotes: 3

Mohsen
Mohsen

Reputation: 3552

Jasper report project comes with a sample code to export reports to HTML. It's not only a single HTML file, but at least it requires a 1x1 transparent gif used for decorating. It's not a good idea to export reports to HTML files because of portability and printing issues. You can however show HTML reports inside your webserver (which is very commone) using that sample code. See \demo\samples\webapp application for more details.

Upvotes: 3

Related Questions