package servlets;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JRRuntimeException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.export.JRHtmlExporter;
import net.sf.jasperreports.engine.export.JRHtmlExporterParameter;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.j2ee.servlets.ImageServlet;
import datasource.WebappDataSource;
/**
* @author Teodor Danciu (teodord@users.sourceforge.net)
* @version $Id: HtmlServlet.java 1236 2006-04-22 07:51:44Z teodord $
*/
public class HtmlServlet extends HttpServlet
{
/**
*
*/
public void service(
HttpServletRequest request,
HttpServletResponse response
) throws IOException, ServletException
{
ServletContext context = this.getServletConfig().getServletContext();
response.setContentType("text/html");
PrintWriter out = response.getWriter();
try
{
File reportFile = new File(context.getRealPath("/reports/WebappReport.jasper"));
if (!reportFile.exists())
throw new JRRuntimeException("File WebappReport.jasper not found. The report design must be compiled first.");
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();
request.getSession().setAttribute(ImageServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperPrint);
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_WRITER, out);
exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "image?image=");
exporter.exportReport();
}
catch (JRException e)
{
out.println("");
out.println("");
out.println("");
out.println("");
out.println("");
out.println("");
out.println("JasperReports encountered this error :");
out.println("
");
e.printStackTrace(out);
out.println("
");
out.println("");
out.println("");
}
}
}
blog to recollect different kinf of data, comments, todo's, and make it easily avalaible from the web
Mostrando entradas con la etiqueta JasperReports web servlet. Mostrar todas las entradas
Mostrando entradas con la etiqueta JasperReports web servlet. Mostrar todas las entradas
17 enero 2009
jasperReports webapp sample
Mirar los ejemplos del jasperreports-3.1.3-project. En especial hay uno llamado webapp con un servlet que nos viene genial.
Suscribirse a:
Entradas (Atom)