Foros del Web » Programación para mayores de 30 ;) » Java »

aplicacion flash + jsp +servlet + iReport + apacheTomcat + MySql

Estas en el tema de aplicacion flash + jsp +servlet + iReport + apacheTomcat + MySql en el foro de Java en Foros del Web. Hola Bueno mi tema es que, estoy haciendo un aplicación flash + java + jasper +Mysql + apacheTomcat (la versión de Netbeans 6.9). El flash ...
  #1 (permalink)  
Antiguo 17/12/2010, 16:33
Avatar de eaanillol  
Fecha de Ingreso: septiembre-2010
Ubicación: Bogota - Colombia
Mensajes: 25
Antigüedad: 13 años, 7 meses
Puntos: 0
aplicacion flash + jsp +servlet + iReport + apacheTomcat + MySql

Hola
Bueno mi tema es que, estoy haciendo un aplicación flash + java + jasper +Mysql + apacheTomcat (la versión de Netbeans 6.9). El flash lo estoy usando como interfaz gráfica.
Tengo configurado todo, absolutamente todo a las mil maravillas :

-Ejecuto por aparte el SWF que cree y llamo un jsp, y le envio parámetros y este los recibe. Eso por un lado.

-Por el otro, hago la prueba con el jsp, es decir lo corro directamente desde el Netbeans y luego me llama a un servlet y este último a su vez, me genera el reporte jasper en pdf y me da la opción de descargarlo, y lo descargo normal.

(Todo lo anterior lo logre hacer con sudor y lagrimas).

Hasta ahí parece que todo funciona a las mil maravillas pero no. Cuando intento generar el reporte desde flash (Esto se debe a que debo generar el reporte con unos parámetros que estan en flash), es decir:

el swf llama al jsp enviándole los parámetros
el jsp me los recibe y los proceso
se los envio al servlet
Este me da la opcion para descargar y me sale el siguiente error:

<Navegador IE8>
Descargando desde:
localhost: "El archivo no existe o no se encuentra disponible en estos momentos"

ojo este localhost es donde esta el servlet y el jsp.

El software que toy usando es:
MySql 5.1
NetBeans 6.9
iReport 3.7.6
flash cs4 (AS3)

Que malavar tengo que hacer para que el reporte me descargue?

mientras tanto eso.
Espero su mas pronta ayuda.
pd
En un momento les posteo el cod por que creo que no cabe aqui.
  #2 (permalink)  
Antiguo 17/12/2010, 16:39
Avatar de eaanillol  
Fecha de Ingreso: septiembre-2010
Ubicación: Bogota - Colombia
Mensajes: 25
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: aplicacion flash + jsp +servlet + iReport + apacheTomcat + MySql

El codigo desde mi index. jsp es:
Código jsp:
Ver original
  1. <%--
  2.     Document   : index
  3.     Created on : Dec 13, 2010, 3:18:13 PM
  4.     Author     : ventas
  5. --%>
  6.  
  7. <%@page contentType="text/html" pageEncoding="UTF-8"%>
  8. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  9.    "http://www.w3.org/TR/html4/loose.dtd">
  10.  
  11. <%-- Inserto las librerias --%>
  12. <%@page import = "java.util.*" %>
  13. <%! String msg = "Esta es un frase de un variable";%>
  14.  
  15. <%-----------------------------------------------------------%>
  16. <%-- Aquí comienza la pagina HTML --%>
  17. <%-----------------------------------------------------------%>
  18. <html>
  19.     <head>
  20.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  21.         <%-- Le coloco el título a la página --%>
  22.         <title>Mi página de JSP</title>
  23.     </head>
  24.     <body>
  25.         <h1>Hello World!</h1>
  26.        
  27.         <br>
  28.         <%-----------------------------------------------------------%>
  29.         <%-- Fase de captura de datos --%>
  30.         <%-----------------------------------------------------------%>
  31.         <%
  32.            /*Le digo en que formato quiero los datos*/
  33.            request.setCharacterEncoding("UTF-8");
  34.            /*Capturo el parámetro enviado*/
  35.            String a = request.getParameter("id");
  36.            /*Le asigno el valor a al variable global*/
  37.            msg = a;
  38.          %>
  39.          <%= msg%>
  40.         <%-----------------------------------------------------------%>
  41.         <%-----------------------------------------------------------%>
  42.         <%-- Link de descargar del archivo --%>
  43.         <p>Para descargar el archivo haga clic
  44.             <a href="http://localhost:8084/miWeb/servletReporte2?id=<%= msg %>"  >aquí</a>
  45.         </p>
  46.         <%-- Imprimo la fecha --%>
  47.         <% out.println(""+ new Date());%>
  48.     </body>
  49. </html>

y en mi servlet tengo:
Código java:
Ver original
  1. package pkgreporte;
  2.  
  3. import java.io.File;
  4. import java.util.HashMap;
  5.  
  6. import javax.servlet.ServletOutputStream;
  7. import net.sf.jasperreports.engine.JRException;
  8. import net.sf.jasperreports.engine.JasperRunManager;
  9.  
  10.  
  11. import java.io.IOException;
  12. import java.io.PrintWriter;
  13. import java.io.StringWriter;
  14. import java.sql.Connection;
  15. import java.sql.DriverManager;
  16. import java.util.Map;
  17. import javax.servlet.ServletException;
  18. import javax.servlet.http.HttpServlet;
  19. import javax.servlet.http.HttpServletRequest;
  20. import javax.servlet.http.HttpServletResponse;
  21.  
  22.  
  23.  
  24. /**
  25.  *
  26.  * @author MRARRB87
  27.  */
  28. public class servletReporte extends HttpServlet {
  29.  
  30.  
  31.  
  32.  
  33.     protected void processRequest(HttpServletRequest request, HttpServletResponse response)
  34.     throws ServletException, IOException {
  35.  
  36.  
  37.         response.setHeader("Cache-Control","no-cache");  //Para evitar el cache
  38.         response.setHeader("Pragma","no-cache");
  39.         response.setDateHeader ("Expires", 0);
  40.  
  41.         response.setContentType("application/pdf");
  42.         response.setHeader("Content-Disposition","attachment; filename=\"reporteServlet.pdf\";");
  43.  
  44.  
  45.  
  46.        
  47.  
  48.         Connection conn=null;
  49.         try {
  50.             Class.forName("com.mysql.jdbc.Driver"); //se carga el driver
  51.             conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/bd_reporte_servlet","root","root");
  52.         }
  53.         catch (Exception ex) {
  54.             ex.printStackTrace();
  55.         }
  56.          
  57.         ServletOutputStream servletOutputStream = response.getOutputStream();
  58.         File reportFile = new File(getServletConfig().getServletContext().getRealPath("servlet_reporte.jasper"));
  59.  
  60.         Map parameters = new HashMap();
  61.  
  62.         int id_tipoperosona=1;
  63.  
  64.         parameters.put("Pid_tipo_persona",id_tipoperosona); //envio de parametros al reporte
  65.  
  66.         byte[] bytes = null;
  67.  
  68.         try {
  69.             bytes = JasperRunManager.runReportToPdf(reportFile.getPath(),parameters, conn);
  70.            
  71.             response.setContentType("application/pdf");
  72.             response.setContentLength(bytes.length);
  73.  
  74.             servletOutputStream.write(bytes, 0, bytes.length);
  75.             servletOutputStream.flush();
  76.             servletOutputStream.close();
  77.         } catch (JRException e){
  78.             // display stack trace in the browser
  79.             StringWriter stringWriter = new StringWriter();
  80.             PrintWriter printWriter = new PrintWriter(stringWriter);
  81.             e.printStackTrace(printWriter);
  82.             response.setContentType("text/plain");
  83.             response.getOutputStream().print(stringWriter.toString());
  84.         }
  85.     }
  86.  
  87.     // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
  88.     /**
  89.      * Handles the HTTP <code>GET</code> method.
  90.      * @param request servlet request
  91.      * @param response servlet response
  92.      * @throws ServletException if a servlet-specific error occurs
  93.      * @throws IOException if an I/O error occurs
  94.      */
  95.     @Override
  96.     protected void doGet(HttpServletRequest request, HttpServletResponse response)
  97.     throws ServletException, IOException {
  98.         processRequest(request, response);
  99.     }
  100.  
  101.     /**
  102.      * Handles the HTTP <code>POST</code> method.
  103.      * @param request servlet request
  104.      * @param response servlet response
  105.      * @throws ServletException if a servlet-specific error occurs
  106.      * @throws IOException if an I/O error occurs
  107.      */
  108.     @Override
  109.     protected void doPost(HttpServletRequest request, HttpServletResponse response)
  110.     throws ServletException, IOException {
  111.         processRequest(request, response);
  112.     }
  113.  
  114.     /**
  115.      * Returns a short description of the servlet.
  116.      * @return a String containing servlet description
  117.      */
  118.     @Override
  119.     public String getServletInfo() {
  120.         return "Short description";
  121.     }// </editor-fold>
  122.  
  123. }

Etiquetas: flash, ireport, jsp, mysql, servlet, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:22.