| 1 28 package servlets; 29 30 import java.io.File ; 31 import java.io.IOException ; 32 import java.io.PrintWriter ; 33 import java.util.HashMap ; 34 import java.util.Map ; 35 36 import javax.servlet.ServletContext ; 37 import javax.servlet.ServletException ; 38 import javax.servlet.http.HttpServlet ; 39 import javax.servlet.http.HttpServletRequest ; 40 import javax.servlet.http.HttpServletResponse ; 41 42 import net.sf.jasperreports.engine.JRException; 43 import net.sf.jasperreports.engine.JRRuntimeException; 44 import net.sf.jasperreports.engine.JasperFillManager; 45 import net.sf.jasperreports.engine.JasperPrint; 46 import net.sf.jasperreports.j2ee.servlets.BaseHttpServlet; 47 import datasource.WebappDataSource; 48 49 50 54 public class FillServlet extends HttpServlet  55 { 56 57 58 61 public void service( 62 HttpServletRequest request, 63 HttpServletResponse response 64 ) throws IOException , ServletException  65 { 66 ServletContext context = this.getServletConfig().getServletContext(); 67 68 response.setContentType("text/html"); 69 PrintWriter out = response.getWriter(); 70 71 try 72 { 73 String reportFileName = context.getRealPath("/reports/WebappReport.jasper"); 74 File reportFile = new File (reportFileName); 75 if (!reportFile.exists()) 76 throw new JRRuntimeException("File WebappReport.jasper not found. The report design must be compiled first."); 77 78 Map parameters = new HashMap (); 79 parameters.put("ReportTitle", "Address Report"); 80 parameters.put("BaseDir", reportFile.getParentFile()); 81 82 JasperPrint jasperPrint = 83 JasperFillManager.fillReport( 84 reportFileName, 85 parameters, 86 new WebappDataSource() 87 ); 88 89 request.getSession().setAttribute(BaseHttpServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperPrint); 90 } 91 catch (JRException e) 92 { 93 out.println("<html>"); 94 out.println("<head>"); 95 out.println("<title>JasperReports - Web Application Sample</title>"); 96 out.println("<link rel=\"stylesheet\" type=\"text/css\" HREF=\"../stylesheet.css\" title=\"Style\">"); 97 out.println("</head>"); 98 99 out.println("<body bgcolor=\"white\">"); 100 101 out.println("<span class=\"bnew\">JasperReports encountered this error :</span>"); 102 out.println("<pre>"); 103 104 e.printStackTrace(out); 105 106 out.println("</pre>"); 107 108 out.println("</body>"); 109 out.println("</html>"); 110 } 111 112 out.println("<html>"); 113 out.println("<head>"); 114 out.println("<title>JasperReports - Web Application Sample</title>"); 115 out.println("<link rel=\"stylesheet\" type=\"text/css\" HREF=\"../stylesheet.css\" title=\"Style\">"); 116 out.println("</head>"); 117 118 out.println("<body bgcolor=\"white\">"); 119 120 out.println("<span class=\"bold\">The compiled report design was successfully filled with data.</span>"); 121 122 out.println("</body>"); 123 out.println("</html>"); 124 } 125 126 127 } 128 | Popular Tags |