Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.uca.tecnoweb.servlet;
- import java.io.*;
- import java.util.*;
- import java.sql.*;
- import javax.servlet.*;
- import javax.servlet.http.*;
- import net.sf.jasperreports.engine.*;
- /**
- *
- * @author Byron
- */
- public class ReportServlet extends HttpServlet {
- /**
- * Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
- * @param request servlet request
- * @param response servlet response
- * @throws ServletException if a servlet-specific error occurs
- * @throws IOException if an I/O error occurs
- */
- protected void processRequest(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- // Introducir en el flujo de salida del servlet el PDF generado por el reporte.
- ServletOutputStream servletOutputStream = response.getOutputStream();
- InputStream reportStream = this.getServletConfig()
- .getServletContext()
- .getResourceAsStream("/WEB-INF/reports/listaAlumnos.jasper");
- // Conectividad para BD.
- String url = "jdbc:mysql://localhost:3306/academica";
- String driver = "com.mysql.jdbc.Driver";
- String usuario = "root";
- String clave = "root";
- // Para parámetros al reporte.
- HashMap params = new HashMap();
- String carnetAlumno = "00001234";
- params.put("CARNET_ALUMNO", carnetAlumno);
- try {
- // Cargar driver de RDBMS y establecer conexión.
- Class.forName(driver);
- Connection con = DriverManager.getConnection(url, usuario, clave);
- // Enviamos el Pdf del reporte a un flujo de salida, en este caso el flujo de salida del Servlet.
- JasperRunManager.runReportToPdfStream(reportStream, servletOutputStream, params, con);
- response.setContentType("application/pdf");
- //Cerramos la casa.
- con.close();
- reportStream.close();
- servletOutputStream.flush();
- servletOutputStream.close();
- } catch (JRException ex) { //JasperReports Exception
- ex.printStackTrace();
- } catch (SQLException ex) {
- ex.printStackTrace();
- } catch (ClassNotFoundException ex) {
- ex.printStackTrace();
- }
- }
- // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
- /**
- * Handles the HTTP <code>GET</code> method.
- * @param request servlet request
- * @param response servlet response
- * @throws ServletException if a servlet-specific error occurs
- * @throws IOException if an I/O error occurs
- */
- @Override
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- processRequest(request, response);
- }
- /**
- * Handles the HTTP <code>POST</code> method.
- * @param request servlet request
- * @param response servlet response
- * @throws ServletException if a servlet-specific error occurs
- * @throws IOException if an I/O error occurs
- */
- @Override
- protected void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- processRequest(request, response);
- }
- /**
- * Returns a short description of the servlet.
- * @return a String containing servlet description
- */
- @Override
- public String getServletInfo() {
- return "Short description";
- }// </editor-fold>
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement