Buenas noches
Estoy trabajando en un sistema que tiene un único reporte y este lo arme con jasper.
La compu de desarrollo utiliza windows10, apache 2.4, toba 3.3, postgres 14, php 7.4, Ireport5.6 y java 1.7 para usar Ireport.
En desarrollo el sistema se ejecuta barbaro, el reporte también sale bien, se visualiza sin problema.
Instalo el sistema en la compu que va actuar como servidor, tiene casi las mismas aplicaciones instaladas que en desarrollo, windows10, apache 2.4, postgres14, php 7.4 , excepto x java que instale el 1.8.
El problema surge cuando desde el botón imprimir quiero sacar el reporte, la pantalla queda en blanco.
Arme un archivo.bat para levantar el servicio de jasper y lo hace sin problemas
start /B java -jar C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\WEB-INF\lib\JavaBridge.jar SERVLET:8081
El código que utilizo para sacar el reporte es
function vista_jasperreports(toba_vista_jasperreports $report)
{
$path = toba::proyecto()->get_path()."/exportaciones/jasper/pasavante.jasper";
$report->set_parametro('id_pasavante','E',$this->s__idpasavante['id_pasavante']);
$report->set_path_reporte($path);
$db= toba::db('pasavantes');
$report->set_conexion($db);
}
El log del sistema saca:
[DEBUG][pasavantes] PUNTO DE MONTAJE: se cargó exitosamente el autoload del punto de montaje proyecto
[DEBUG][toba] [SECCION] Iniciando componentes…
[INFO][pasavantes] PUNTO MONTAJE: se cargó la clase pasavantes/ci_impresion.php del punto de montaje proyecto. El path del mismo es C:\Sistema\pasavantes100/php
[DEBUG][toba] componente(288000088): Pantalla de eventos: ‘seleccion’
[DEBUG][toba] [SECCION] Procesando eventos…
[DEBUG][toba] componente(288000088): [ inicializar_dependencias ]
array (
0 => ‘cuadro’,
)
[DEBUG][toba] [SECCION] Configurando dependencias para responder al servicio…
[DEBUG][toba] componente(288000088): Pantalla de servicio: ‘seleccion’
[INFO][toba] componente(288000088): [ callback ] ‘conf__seleccion’ no fue atrapado
[DEBUG][toba] componente(288000088): [ callback ] ‘conf__cuadro’
[DEBUG][toba] [SECCION] Respondiendo al servicio__vista_jasperreports…
[DEBUG][pasavantes] Seteo el esquema por defecto para el reporte: SET search_path = “public”, “public”;
[ERROR][pasavantes] Error en la ejecución del reporte
[ERROR][pasavantes]
[DEBUG][pasavantes] Jasper JDBC close Connection
[CRITICAL][toba] java_InternalException:
[TRAZA]
java_ThrowExceptionProxyFactory->getProxy
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 223
Parametros:
9
org.postgresql.jdbc4.Jdbc4Connection
T
1
java_Arg->getResult
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 388
Parametros:
1
java_Client->getWrappedResult
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 394
Parametros:
1
java_Client->getResult
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 588
java_Client->invokeMethod
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 1795
Parametros:
1
fillReport
C:\Sistema\pasavantes100\exportaciones\jasper\pasavante.jasper Instancia de Java Instancia de java_InternalJava
java_JavaProxy->__call
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 1894
Parametros:
fillReport
C:\Sistema\pasavantes100\exportaciones\jasper\pasavante.jasper Instancia de Java Instancia de java_InternalJava
java_AbstractJava->__call
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 2042
Parametros:
fillReport
C:\Sistema\pasavantes100\exportaciones\jasper\pasavante.jasper Instancia de Java Instancia de java_InternalJava
Java->__call
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\framework\php\nucleo\lib\salidas\toba_vista_jasperreports.php, lInea 336
Parametros:
fillReport
C:\Sistema\pasavantes100\exportaciones\jasper\pasavante.jasper Instancia de Java Instancia de java_InternalJava
toba_vista_jasperreports->completar_con_datos
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\framework\php\nucleo\lib\salidas\toba_vista_jasperreports.php, lInea 281
toba_vista_jasperreports->generar_salida
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\framework\php\nucleo\toba_solicitud_web.php, lInea 335
toba_solicitud_web->servicio__vista_jasperreports
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\framework\php\nucleo\toba_solicitud_web.php, lInea 188
Parametros:
Instancia de ci_impresion
toba_solicitud_web->procesar_servicios
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\framework\php\nucleo\toba_solicitud_web.php, lInea 60
toba_solicitud_web->procesar
Archivo: C:\Sistema\pasavantes100\vendor\siu-toba\framework\php\nucleo\toba_nucleo.php, lInea 96
toba_nucleo->acceso_web
Archivo: C:\Sistema\pasavantes100\www\aplicacion.php, lInea 30
El log de apache dice en resumen “Error en la ejecución del reporte”
[Sat Mar 22 22:13:19.398301 2025] [php7:notice] [pid 5248:tid 1124] [client ::1:58254] Error en la ejecuci\xf3n del reporte, referer: http://localhost/pasavantes/aplicacion.php?ah=st67df6029de7540.42516866&ai=pasavantes||288000016
[Sat Mar 22 22:13:19.398301 2025] [php7:notice] [pid 5248:tid 1124] [client ::1:58254] , referer: http://localhost/pasavantes/aplicacion.php?ah=st67df6029de7540.42516866&ai=pasavantes||288000016
[Sat Mar 22 22:13:19.399299 2025] [php7:notice] [pid 5248:tid 1124] [client ::1:58254] java_InternalException: \n[TRAZA]\n\t\n\tjava_ThrowExceptionProxyFactory->getProxy \nArchivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 223 \nParametros: \n9\t\t\norg.postgresql.jdbc4.Jdbc4Connection\t\t\nT\t\t\n1\t\t\n\t\n\tjava_Arg->getResult \nArchivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 388 \nParametros: \n1\t\t\n\t\n\tjava_Client->getWrappedResult \nArchivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 394 \nParametros: \n1\t\t\n\t\n\tjava_Client->getResult \nArchivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 588 \n\t\n\tjava_Client->invokeMethod \nArchivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.inc, lInea 1795 \nParametros: \n1\t\t\nfillReport\t\t\nC:\Sistema\pasavantes100\exportaciones\jasper\pasavante.jasper\tInstancia de Java Instancia de java_InternalJava \t\n\t\n\tjava_JavaProxy->__call \nArchivo: C:\Sistema\pasavantes100\vendor\siu-toba\jasper\JavaBridge\java\Java.i…SIGUE…, referer: http://localhost/pasavantes/aplicacion.php?ah=st67df6029de7540.42516866&ai=pasavantes||288000016
Estuve siguiendo el código que ejecuta toba_vista_jasperreports.php para identificar la linea donde salta el error.
La ejecución se rompe en la lineas $print = $this->jasper->fillReport($this->path_reporte, $this->parametros, $con1);
Donde los valores de los parámetros que le llegan a la función son:
- $this->path_reporte: C:\Sistema\pasavantes100\exportaciones\jasper\pasavante.jasper
- $this->parametros: {id_pasavante=4276}
- $con1: org.postgresql.jdbc4.Jdbc4Connection@6dd7db3d
El punto 1 y 2 son correctos, el 3 no se…
Algo mas que probe fue que el sql que tengo en el reporte y sus subreportes, a cada nombre de tabla le sume por delante el “public”, por ejemplo public.movimientos. Con esto no logre nada, sigue sin salir el reporte.
Que estoy haciendo mal y no me estoy dando cuenta? que me falta hacer?
Me podrían porfi orientar sobre que mas puedo chequear …
Desde ya gracias!!!