Ver Mensaje Individual
  #855 (permalink)  
Antiguo 14/05/2007, 08:40
weylon134
 
Fecha de Ingreso: mayo-2007
Mensajes: 5
Antigüedad: 17 años
Puntos: 0
Re: Jasper Report + iReport + NetBeans 4

hola alguien tendria el codigo para pasar un parametro (id) desde un JSP/servlet a un archivo ireport para que lo genere.

el que tengo no funciona, no abre el archivo pdf nose si sera por el mozila, y cuando pego la direccion en el firefox me pone para descargar el pdf y lo genera y se ve pero no importa que parametro pongas siempre lo toma como uno...

si alguien sabe por que o tiene algun codigo que funcione se lo agradeceria


package std;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;

import java.util.HashMap;
import java.util.Map;

import net.sf.jasperreports.engine.*;

import net.sf.jasperreports.view.*;
import java.sql.*;
import java.io.*;
import java.util.*;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class loader2 extends HttpServlet {

public void doGet (HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{

try
{

InputStream in = this.getClass().getResourceAsStream("Ministerio agustin.jasper");


//Pasamos parametros al reporte Jasper.
Map parameters = new HashMap();

int id = Integer.parseInt(request.getParameter("factura_id" )) ;

//paso parametro
parameters.put("$P{PARAM}",new Integer(id));



byte[] bytes = JasperRunManager.runReportToPdf(in, parameters, getConnection());


response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();




}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
/**Metodo para crear la conexion a DB*/


public static Connection getConnection() throws ClassNotFoundException, SQLException {
//Configuraci?n de la conexi?n.
/*String driver = "com.mysql.jdbc.Driver";
String connectString = "jdbc:mysql://localhost:3306/ono";
String user = "root";
String password = "root";

Class.forName(driver);
Connection conn = DriverManager.getConnection(connectString, user, password);*/
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@123 :1521:123", "123", "123");
//Statement stmt = conn.createStatement();
//ResultSet rset = stmt.executeQuery("select TOTAL from FACTURAS");

//Retornamos la conexi?n establecida.
return conn;
}

protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

}

public String getServletInfo() {
return "Short description";
}

}

****is not linux****