Problemas para imprimir PDF desde Gestión

Buenas tardes, nos encontramos probando desde la interfaz Gestión la versión SIU-GUARANI 3.21.0 y no estamos pudiendo imprimir ningún reporte en PDF. Les comento las configuraciones que hicimos hasta el momento:

  1. Se agregaron las directivas jasper_host y jasper_port a nivel global en el archivo instalacion/instalacion.ini, con los siguientes valores:

jasper_host = “127.0.0.1”
jasper_port = “8081”

  1. Se levanto el servicio de jasper con el siguiente comando:
    java -jar <path proyecto Guaraní>/vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET_LOCAL:8081

  2. Al intentar imprimir algún reporte se abre pantalla en blanco y el sistema se cuelga.

¿Que configuración estaría pendiente realizar?
Quedamos a la espera de su respuesta.

Saludos

Hola @gmiranda

Proba con este post. Hace de los puntos 4) en adelante, ya que la version 3.21.0 ya usa “siu-toba/jasper”: “v5.6.1.2”, .

Luego fíjate que debes ejecutar dos instancias de Jasper, una para Gestión y otra para Autogestión, cada una en distintos puertos.

Fíjate que cuando ejecutas Jasper se le pasa un “5” que es en nivel de debug, si sigue dando error pasame lo que devuelve los logs de Jasper.

saludos.
2

Buen día, ahi segui los pasos indicados pero sigue sin funcionar. Ejecute el jasper con el siguiente comando :

java -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl -Duser.language=es -Duser.country=AR -Djava.awt.headless=true -jar /usr/local/proyectos/grado/vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET_LOCAL:8081 5

y la salida que obtuve fue lo siguiente:

root@test-guarani-ap:/dev# java -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl -Duser.language=es -Duser.country=AR -Djava.awt.headless=true -jar /usr/local/proyectos/grado/vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET_LOCAL:8081 5
Dec 22 11:47:01 VMBridge INFO : VM : 1.8.0_131@http://java.oracle.com/
Dec 22 11:47:01 VMBridge INFO : VMBridge version : 5.5.2
Dec 22 11:47:01 VMBridge INFO : logFile :
Dec 22 11:47:01 VMBridge INFO : default logLevel : 5
Dec 22 11:47:01 VMBridge INFO : socket : SERVLET_LOCAL:8081
Dec 22 11:47:01 VMBridge INFO : java.ext.dirs : /usr/lib/jvm/java-8-oracle/jre/lib/ext:/usr/java/packages/lib/ext
Dec 22 11:47:01 VMBridge INFO : php.java.bridge.base: /root
Dec 22 11:47:01 VMBridge INFO : thread pool size : 20
Dec 22 11:47:01 VMBridge INFO : JavaBridgeRunner started on port INET_LOCAL:8081
java.lang.RuntimeException: java.net.BindException: La dirección ya se está usando (Bind failed)
at php.java.bridge.Standalone.init(Standalone.java:217)
at php.java.bridge.Standalone.main(Standalone.java:320)
Caused by: java.net.BindException: La dirección ya se está usando (Bind failed)
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
at java.net.ServerSocket.bind(ServerSocket.java:375)
at java.net.ServerSocket.(ServerSocket.java:237)
at php.java.bridge.TCPServerSocket.newServerSocket(TCPServerSocket.java:58)
at php.java.bridge.TCPServerSocket.(TCPServerSocket.java:79)
at php.java.bridge.TCPServerSocket.create(TCPServerSocket.java:51)
at php.java.bridge.Standalone.bind(Standalone.java:75)
at php.java.bridge.JavaBridge.bind(JavaBridge.java:234)
at php.java.bridge.JavaBridgeRunner.bind(JavaBridgeRunner.java:141)
at php.java.bridge.http.HttpServer.(HttpServer.java:91)
at php.java.bridge.JavaBridgeRunner.(JavaBridgeRunner.java:71)
at php.java.bridge.JavaBridgeRunner.getRequiredStandaloneInstance(JavaBridgeRunner.java:127)
at php.java.bridge.JavaBridgeRunner.main(JavaBridgeRunner.java:521)
at php.java.bridge.Standalone.checkServlet(Standalone.java:240)
at php.java.bridge.Standalone.init(Standalone.java:200)
… 1 more

Por ahora estamos probando solo la interfaz Gestión, el año que viene recién instalaremos Autogestión.

Quedo a la espera de su respuesta.

Saludos

hola @gmiranda

Dec 22 11:47:01 VMBridge INFO : JavaBridgeRunner started on port INET_LOCAL:8081
java.lang.RuntimeException: java.net.BindException: La dirección ya se está usando (Bind failed)

Tenes el puerto 8081 tomado, quizás te quedo otra instancias de Jasper ya corriendo, la podes matar por puerto, seguí How to Kill a Process Using a Port in Linux.

Saludos.
2

Hola, justo luego reinicie el servidor y ya no me aparece el error anterior. Cuando vuelvo a eejcutar el comando me sale solo esto pero sigue sin mostrar los resportes en Pdf:
root@test-guarani-ap:/home/faraya# java -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl -Duser.language=es -Duser.country=AR -Djava.awt.headless=true -jar /usr/local/proyectos/grado/vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET_LOCAL:8081 5
Dec 22 12:19:27 VMBridge INFO : VM : 1.8.0_131@http://java.oracle.com/
Dec 22 12:19:27 VMBridge INFO : VMBridge version : 5.5.2
Dec 22 12:19:27 VMBridge INFO : logFile :
Dec 22 12:19:27 VMBridge INFO : default logLevel : 5
Dec 22 12:19:27 VMBridge INFO : socket : SERVLET_LOCAL:8081
Dec 22 12:19:27 VMBridge INFO : java.ext.dirs : /usr/lib/jvm/java-8-oracle/jre/lib/ext:/usr/java/packages/lib/ext
Dec 22 12:19:27 VMBridge INFO : php.java.bridge.base: /root
Dec 22 12:19:27 VMBridge INFO : thread pool size : 20
Dec 22 12:19:27 VMBridge INFO : JavaBridgeRunner started on port INET_LOCAL:8081

Saludos

Hola @gmiranda

Claro, ahí Jasper quedo corriendo pero aun no imprimiste nada por eso no registra errores.

Otra forma es hacer lo de este post, dentro de /tmp/jasper.log va a registrar todos los errores de Jasper, adjuntamelo.

Saludos.
2

Buen día, adjunto archivo jasper.log. Te comento que algunos reportes ya estoy pudiendo generar, pero otros reportes siguen con el problema, por ejemplo: reporte de la ficha del alumno, reporte de plan de estudios. Sigo probando el resto de los reportes para ver si alguno más sigue sin funcionar.

Una duda que me quedo es si el jasper.log de actualiza solo, o por cada prueba hay que bajar el servicio y volverlo a levantar? porque veia que las hora de las pruebas me muestra lo mismo, osea las últimas pruebas como que no las veo registradas en el log.

Saludos

jasper.log (426,1 KB)

Hola @gmiranda

No veo errores en los logs que me pasaste, deberían aparecer como VMBridge ERROR.

Seguí este post del paso 4 en adelante, recorda ejecutar dos instancias de Jasper, una para Gestión y otra para Autogestión.

Una duda que me quedo es si el jasper.log de actualiza solo, o por cada prueba hay que bajar el servicio y volverlo a levantar? porque veia que las hora de las pruebas me muestra lo mismo, osea las últimas pruebas como que no las veo registradas en el log.

Hice una prueba, y es verdad, no muestra lo ultimo. Vas a tener que ejecutarlo de la siguiente manera y ver los logs en consola:

java -Duser.language=es -Duser.country=AR -Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl -Duser.language=es -Duser.country=AR -Djava.awt.headless=true -jar /path/to/gestion/vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET_LOCAL:8081 5

Saludos.
2

Hola, ya había seguido los pasos del post a partir del punto 4.
Sigo probando los reportes que me dan error (reporte de planes de estudio y reporte de ficha de alumno) y reviso el log (jasper.log) pero no me tira ningún error (para que se actualice el log mato el servicio, lo vuelvo a levantar , hago la prueba y reviso el log). ¿Que otra cosa puedo seguir probando? Adjunto log del sistema.

Saludos

sistema.log (527,9 KB)

Hola @gmiranda

Veo lo siguiente en los logs:

[ERROR][guarani] Error al ejecutar el comando 'fop -xml /usr/local/proyectos/grado/vendor/siu-toba/framework/temp/xmlm0SubK -xsl /usr/local/proyectos/grado/vendor/siu-toba/framework/exportaciones/pdf.xsl -pdf /usr/local/proyectos/grado/vendor/siu-toba/framework/temp/archivo.pdf'

En el archivo instalacion/instalacion.ini tenes configurado lo siguiente abajo de todo:

[xslfo]
fop = "/usr/local/app/php/3ros/fop/fop"

/usr/local/app reemplazalo por el directorio raíz de Guarani Gestión.

Paso 8 de esta documentación.

Eso no es problema de Jasper sino de FOP.

Saludos.
2

Buen día, muchísimas gracias!! ahí que todo funcionando correctamente.

Saludos