24/10/2006, 10:26
|
| | | Fecha de Ingreso: octubre-2006
Mensajes: 4
Antigüedad: 18 años, 2 meses Puntos: 0 | |
Bueno la cosa ha cambiado un poco...Ya al menos he conseguido adaptar un servlet para q llame a irepors y a su vez mande la consulta mediante un parametro tipo sql_query.
Pero esta visto y comprobado q esto del reporte me va a dar guerra!!!!!!!!!!!!!
El problema es q compilo el servlet y no me devuelve ningun error, pero sin embargo este no genera nada.
El codigo es el siguiente y lo he tomado de este foro de uno de los usuarios q ya lo tenia hecho:
///////////////////////////////////////////////////////////////////////////////
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.export.*;
import net.sf.jasperreports.engine.util.*;
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 topdf extends HttpServlet {
public void doGet (HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
try
{
InputStream in = this.getClass().getResourceAsStream("Presupuesto.j asper");
//Pasamos parametros al reporte Jasper.
Map parameters = new HashMap();
String id=request.getParameter("codla");
parameters.put("sql_query", new String("select * from presupuesto where idpresupuesto="+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);
//Retornamos la conexión establecida.
return conn;
}
}
/////////////////////////////////////////////////////////////////////////////////////
Por otro lado quisiera saber donde tengo q colocar mi archivo.jasper dentro de mi proyecto de netbeans
Muchas gracias y espero q alguien me pueda ayudar pronto |