Problemas al descargar archivos PDF

Estimados, me comunico porque realizando pruebas en distintos medios de pagos en el modulo de Portal de Pagos de Sanaviron. En este caso, adjuntado en la imagen, probamos imprimir ambos archivos. Con el comprobante de pago COBRADO no tenemos problemas de impresión; en cambio con el comprobante de pago en ventanilla ( Descargar QR) nos direcciona a una pantalla blanca.

El problema anteriormente era el inverso, permitía imprimir el comprobante QR, pero no el comprobante de pago cobrado. No lograba conectar con el compilador porque había una incompatibilidad con la versión de Java que teníamos ( el sistema requería versiones mas antiguas)

Este error se replica de manera constante, cuando el sistema permite imprimir uno de los tipos de comprobantes (pago en ventanilla), genera error en la descarga del otro tipo(comprobante de cobrado). No solo ocurre en Portal de Pagos, sino que en el caso que describimos al principio tampoco nos permite descargar el archivo desde SQ-Nucleo.

En los errores del LOG GCO encontramos lo siguiente:

[2025-10-13T18:17:17.848226-03:00] SQ-GCO.CRITICAL: SIU\SQ\Pagos\services\sq_base_api::get_comprobantes: 500 - { “error”: 500, “mensaje”: “500 Internal Server Error”, “descripcion”: “Error al llenar el pdf. Trace: java.lang.Exception: Invoke failed: [[c:JasperFillManager]]->fillReport((o:String)[o:String], (i:Map)[o:HashMap]). Cause: net.sf.jasperreports.engine.JRException: Could not instantiate report compiler : net.sf.jasperreports.engine.design.JRJavacCompiler VM: 1.8.0_462@https://adoptium.net/\\n\\tat net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:819)\n\tat net.sf.jasperreports.engine.JasperCompileManager.getEvaluator(JasperCompileManager.java:377)\n\tat net.sf.jasperreports.engine.fill.JRFillDataset.createCalculator(JRFillDataset.java:462)\n\tat net.sf.jasperreports.engine.fill.JRBaseFiller.(JRBaseFiller.java:405)\n\tat net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:89)\n\tat net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:104)\n\tat net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:62)\n\tat net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:179)\n\tat net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:148)\n\tat net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:311)\n\tat net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:772)\n\tat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n\tat sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n\tat sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\tat java.lang.reflect.Method.invoke(Method.java:498)\n\tat php.java.bridge.JavaBridge.Invoke(JavaBridge.java:1068)\n\tat php.java.bridge.parser.Request.handleRequest(Request.java:426)\n\tat php.java.bridge.parser.Request.handleRequests(Request.java:509)\n\tat php.java.bridge.JavaBridge.handleRequests(JavaBridge.java:173)\n\tat php.java.bridge.http.JavaBridgeRunner.doPut(JavaBridgeRunner.java:203)\n\tat php.java.bridge.http.HttpServer.service(HttpServer.java:289)\n\tat php.java.bridge.http.HttpServer$Runner.run(HttpServer.java:205)\n\tat php.java.bridge.util.ThreadPool$Delegate.run(ThreadPool.java:60)\n\tat php.java.bridge.util.AppThreadPool$Delegate.run(AppThreadPool.java:58)\nCaused by: net.sf.jasperreports.engine.JRException: Could not instantiate report compiler : net.sf.jasperreports.engine.design.JRJavacCompiler\n\t… 24 more\nCaused by: java.lang.NoSuchMethodException: net.sf.jasperreports.engine.design.JRJavacCompiler.(net.sf.jasperreports.engine.JasperReportsContext)\n\tat java.lang.Class.getConstructor0(Class.java:3082)\n\tat java.lang.Class.getConstructor(Class.java:1825)\n\tat net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:814)\n\t… 23 more\n\n” }
[2025-10-13T18:17:17.848386-03:00] SQ-GCO.CRITICAL: GuzzleHttp\Exception\ServerException: Server error: GET https://sanavirontest.undav.edu.ar/sq_academico/rest/v1/comprobantes?id_venta=12 resulted in a 500 Internal Server Error response: { “error”: 500, “mensaje”: “500 Internal Server Error”, “descripcion”: “Error al llenar el pdf. Trace: java. (truncated…) (uncaught exception) at /usr/local/proyectos/sanaviron_quilmes/sq-gco/gco/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php line 113 {“exception”:”[object] (GuzzleHttp\Exception\ServerException(code: 500): Server error: GET https://sanavirontest.undav.edu.ar/sq_academico/rest/v1/comprobantes?id_venta=12 resulted in a 500 Internal Server Error response:\n{\n “error”: 500,\n “mensaje”: “500 Internal Server Error”,\n “descripcion”: “Error al llenar el pdf. Trace: java. (truncated…)\n at /usr/local/proyectos/sanaviron_quilmes/sq-gco/gco/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113)”} .

Estamos al tanto para ver como continuar.

Buenas, qué versión de Java y de JasperReports están usando?

Java version:
openjdk version “1.8.0_432”
OpenJDK Runtime Environment (Temurin)(build 1.8.0_432-b06)
OpenJDK 64-Bit Server VM (Temurin)(build 25.432-b06, mixed mode)

jasperversion:

jasperreports-5.6.0.jar

Utilizamos una versión tan vieja de Java porque la ultima versión no nos permitía imprimir los QR de pago por ventanilla.

Que versión de linux estan usando ?

PRETTY_NAME=“Debian GNU/Linux 12 (bookworm)”
NAME=“Debian GNU/Linux”
VERSION_ID=“12”
VERSION=“12 (bookworm)”
VERSION_CODENAME=bookworm
ID=debian

Buenas tardes!

Proba iniciando el jasper de la siguiente manera:

java -Djava.awt.headless=true -jar ./vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081

Saludos!

[quote=“vtobares, post:6, topic:30765”]
java -Djava.awt.headless=true -jar ./vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081

Me permite descargar la Factura Afip sin problemas, pero al intentar imprimir el QR de pago en ventanilla me redirecciona a un pantallazo en el siguiente link: {{titulo}}

Hola Florencia, esto quedo resuelto?