Ver Mensaje Individual
  #652 (permalink)  
Antiguo 21/07/2006, 07:52
Avatar de manu_el_3
manu_el_3
 
Fecha de Ingreso: febrero-2006
Ubicación: La Paz - Bolivia
Mensajes: 31
Antigüedad: 18 años, 3 meses
Puntos: 0
Parece Tu Conexion

Cita:
Iniciado por superPojo
Hola a todos de nuevo, ya busque por todo el foro, y probe de varias formas, pero creo q el problema esta q yo uso el framework hibernate para conectarme a una BD (mysql); mi reporte . jasper ya esta hecho y tiene la consulta incorporada y lo llamo desde mi aplicacion "test" asi:


Session sess = null;
Map parameter = null;
String jasperReport = null;
//JasperReport jasperReport = null;

try {


//Ruta de Archivo Jasper
String fileName="C:\\Archivos de programa\\JasperSoft\\iReport-1.2.5\\PruebaAddingGroup.jasper";

//Ruta de archivo pdf de destino
String destFileNamePdf="D:\\reports\\rep_cli.pdf";


//Pasamos parametros al reporte Jasper.
Map parameters = new HashMap();
//parameters.put("sql_query", new String("select * from clientes"));


//Preparacion del reporte (en esta etapa se inserta el valor del query en el reporte).
JasperPrint jasperPrint=JasperFillManager.fillReport(fileName, parameter,(Connection)sess.beginTransaction());

//Creación del PDF
JasperExportManager.exportReportToPdfFile(jasperPr int, destFileNamePdf);

} catch (JRException e) {
e.printStackTrace();
}

Creo q estoy haciendo culaquiera, si me pueden ayudar muchisimas gracias.

Hola, el problema que citas parece un problema de conexion, en tu codigo no vi donde es que exactamente le envias la conexion pero puedo darte algunas pautas, pero debo decirte que estoy trabajando con Netbeans:

1. Es preferible que te crees un pool de conexiones para poder trabajar mejor donde en la clase pueder poner algo asi:

Class.forName("org.postgresql.Driver");
String url="jdbc:postgresql://127.0.0.1:5432/academico";
Connection con = DriverManager.getConnection(url,"postgres","");

return con;

2. Y en servlet o donde lo quieras llamr deber usar los metodos:

Connection con;
coneccion_pool con_pool;

con_pool = new coneccion_pool();
con = con_pool.getConnection();
y luego:

byte[] bytes = JasperRunManager.runReportToPdf(file.getPath(), parameters, con);

que es donde le das la ruta del jasper, los parametros en el hashmap y por ultimo laconexion, pero aunque no uses el pool de conexiones y decidas incluir la conexion en cada clases que vayas a usar siempre debes referenciar en el byte[] bytes.

si te das una vueltita al foro encontraras un codigo completo de que otras opciones tienes para mostrar el reporte.

Espero te sirva.
__________________
Atte. Manuel. [email protected]
!!! viva el ireport 1.1.0 !!!
(perdón, es que soy muy nostálgico.)