Link to home
Start Free TrialLog in
Avatar of Adwait Chitaley
Adwait ChitaleyFlag for India

asked on

Jasper HTML

hi experts i have a problem in my code for generating pdf

 JasperRunManager.runReportToPdfStream(reportStream,servletOutputStream,new HashMap(), resultSetDataSource);

when This line is executed the content of database shows in pdf format on browser

but i want ro show the plain text on browser..
i did the following changes


response.setContentType("text/plain");

JasperRunManager.runReportToHtmlFile(jasperReport,new HashMap(), resultSetDataSource);

but it saves the html file in plain text format in my project folder..
but i want to show on  broswer  how can i do????
Avatar of Mick Barry
Mick Barry
Flag of Australia image

runReportToPdfStream() produces pdf data, you need to use something different to generate a plain text report

Avatar of Adwait Chitaley

ASKER

what can i use for ??

did you want a plain text report or html report?

i want both ..

how can i do???
ASKER CERTIFIED SOLUTION
Avatar of Mick Barry
Mick Barry
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
the above line  store the report in html file in my  project ..

nut i want to show the html file report on browser when i submit the form i dont want to store in my project i just want  to show on browser in plain or html format..



the example at the bottom shows streaming html

sorry i didnt get please explain again in breif

i just want to show the data on browser in html or text format
<%@page import="javax.servlet.ServletOutputStream"%>
<%@page import="javax.servlet.http.HttpServletResponse"%>
<%@page import="java.io.ByteArrayOutputStream"%>
<%@page import="java.util.*"%>
<%@page import="net.sf.jasperreports.engine.data.*"%>
<%@page import="net.sf.jasperreports.engine.export.*"%>
<%@page import="net.sf.jasperreports.engine.design.*"%>
<%@page import="net.sf.jasperreports.engine.*"%>
<%@page import="net.sf.jasperreports.view.*"%>
<%@page import="java.io.*"%>


<%
        response.setHeader("Cache-Control","no-cache");
        response.setHeader("Pragma","no-cache");
        response.setDateHeader ("Expires", 0);
       
               
        BeanArray[] ReportResult = (BeanArray[])objDispatcher.getContextValueObj("REPORT");
      // or which ever way we can get the bean array

       
        JasperPrint jp=null;
        JasperReport jr = null;
       
        File reportFile = new File(application.getRealPath("0/htm/BeanTest.jasper"));
        String spath = reportFile.getAbsolutePath();
       
        InputStream inputstream = new FileInputStream(spath);
       
        JRDataSource jrdatasource = new JRBeanArrayDataSource(ReportResult);
       
        Map parameters = new HashMap();
       
        jp = JasperFillManager.fillReport(inputstream, parameters,jrdatasource);
        response.reset();
        response.setHeader("Expires", "0");
        response.setHeader("Cache-Control","must-revalidate, post-check=0, pre-check=0");
        response.setHeader("Pragma", "public");
 
        JRExporter exporter = null;
        ServletOutputStream servletoutstr = response.getOutputStream();
        exporter = new JRHtmlExporter();
       
        response.setContentType("text/html");
        exporter.setParameter(JRExporterParameter.JASPER_PRINT, jp);
        exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, servletoutstr);
       
        Map imagesMap = new HashMap();
        request.getSession().setAttribute("IMAGES_MAP", imagesMap);
        exporter.setParameter(JRHtmlExporterParameter.IMAGES_MAP, imagesMap);
        exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "image.jsp?image=");
 
        try
        {
                exporter.exportReport();
        }
        catch (JRException e)
        {
       
        }      
        finally
        {
                if (servletoutstr != null)
                {
                        try
                        {
                                 servletoutstr.flush();
                                 servletoutstr.close();
                        }
                        catch (IOException ex)
                        {
                        }
        }
        }
  %>
   
   
   
   >