[CERRADO] Impresion de Actas

Estimados, estoy teniendo inconvenientes para la impresion de actas: (G3 V3.5.0) (En la version 3.4.1 me andaba)

Tengo funcioannado el demonio con:

sudo java -jar /usr/local/proyectos/toba/php/3ros/Jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET 8080
(ejecutandolo con salida de error no registra nada cuando se lo invoca desde G3)

@9267
java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.(Socket.java:425)
at java.net.Socket.(Socket.java:208)
at php.java.bridge.ChainsawLogger.configure(ChainsawLogger.java:58)
at php.java.bridge.ChainsawLogger.init(ChainsawLogger.java:71)
at php.java.bridge.ChainsawLogger.createChainsawLogger(ChainsawLogger.java:90)
at php.java.bridge.Util$Logger.(Util.java:103)
at php.java.bridge.Util.setDefaultFileLogger(Util.java:758)
at php.java.bridge.Util.getLogger(Util.java:779)
at php.java.bridge.Util.println(Util.java:426)
at php.java.bridge.Util.logMessage(Util.java:474)
at php.java.bridge.JavaBridge.initLog(JavaBridge.java:274)
at php.java.bridge.Standalone.init(Standalone.java:211)
at php.java.bridge.Standalone.main(Standalone.java:313)
Aug 07 10:58:37 VMBridge INFO : VM : 1.7.0_25@http://java.oracle.com/
Aug 07 10:58:37 VMBridge INFO : VMBridge version : 5.4.4.2
Aug 07 10:58:37 VMBridge INFO : logFile :
Aug 07 10:58:37 VMBridge INFO : default logLevel : 8080
Aug 07 10:58:37 VMBridge INFO : socket : INET_LOCAL:9267
Aug 07 10:58:37 VMBridge INFO : java.ext.dirs : /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
Aug 07 10:58:37 VMBridge INFO : php.java.bridge.base: /root
Aug 07 10:58:37 VMBridge INFO : thread pool size : 20
Aug 07 10:58:37 VMBridge DEBUG: Starting to accept Socket connections

NOTESE QUE PROBE EL PORT 8080 ya que en el archivo sudo vim /usr/local/proyectos/toba/php/3ros/Jasper/JavaBridge/java/Java.inc
hace mencion a dicho puerto. Obviamente el mismo error surge con el puerto 8081.

Con Firefox me habre una nueva ventana en blanco porque no carga la URL. En Ghrome el detalle es el siguiente:

El sitio web ha detectado un error al recuperar lahttp://192.168.3.203/guarani/3.1/aplicacion.php?ah=st52024b276bf72&ai=guarani||34000021&tz=1&ai=guarani||34000021&ts=vista_jasperreports&tsd=guarani||34000146,http://192.168.3.203/guarani/3.1/aplicacion.php?ah=st52024b276bf72&ai=guarani||34000021&tz=1&ai=guarani||34000021&ts=vista_jasperreports&tsd=guarani||34000146,. Es posible que esta esté inactiva debido a tareas de mantenimiento o que se haya configurado de forma incorrecta.

GRACIAS!!!

Hola Emilio,
en la línea donde ejecutás el Java Bridge que copiaste en el post están faltando los dos puntos luego de SERVLET…la ejecutaste así textualmente?
La línea correcta sería:

sudo java -jar /usr/local/proyectos/toba/php/3ros/Jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081

Verifica eso así descartamos ese error. De todas formas te anticipo que no es un problema de la impresión de Actas en particular, ni de la versión, si no que se ocasiona porque no se está levantando bien la conexión del java bridge, por lo que no vas a poder correr ningún reporte en jasper.

Saludos,
Gabriela.

Estimada Gabriela…, si puse los :

sudo java -jar /usr/local/proyectos/toba/php/3ros/Jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081 3 php-java-bridge.log

Dejo la url de la pestaña que genera:
http://192.168.3.203/guarani/3.1/aplicacion.php?ah=st5202651864453&ai=guarani||34000021&tz=1&tcm=guaraniApp&ai=guarani||34000021&ts=vista_jasperreports&tsd=guarani||34000146,

Emilio,
si lo estás ejecutando con la sentencia que me copiaste, ¿nos podés adjuntar el archivo de log que se está generando? (/usr/local/proyectos/toba/php/3ros/Jasper/JavaBridge/WEB-INF/lib/php-java-bridge.log), porque que a las url de tu red local no podemos tener acceso.
Puede que exista algún inconveniente con la versión de la jvm 7, ya que nosotros estamos utilizando la 6.
Saludos,
Gabriela.

Hola

Con java 1.7.0_25 no tengo problemas.

Emilio Luque

Gabi esta es la salida del archivo log:

tail: /usr/local/proyectos/toba/php/3ros/Jasper/JavaBridge/WEB-INF/lib/php-java-bridge.log: file truncated
Aug 07 12:19:13 VMBridge INFO : VM : 1.7.0_25@http://java.oracle.com/
Aug 07 12:19:13 VMBridge INFO : VMBridge version : 5.4.4.2
Aug 07 12:19:13 VMBridge INFO : logFile : php-java-bridge.log
Aug 07 12:19:13 VMBridge INFO : default logLevel : 3
Aug 07 12:19:13 VMBridge INFO : socket : SERVLET:8081
Aug 07 12:19:13 VMBridge INFO : java.ext.dirs : /usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
Aug 07 12:19:13 VMBridge INFO : php.java.bridge.base: /root
Aug 07 12:19:13 VMBridge INFO : thread pool size : 20
Aug 07 12:19:13 VMBridge INFO : JavaBridgeRunner started on port INET:8081

Pero creo qeu el tema esta porque no esta el port escuchando:

sudo netstat -nat | grep LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 :::5432 :::* LISTEN


sudo nmap -sS localhost

Starting Nmap 5.21 ( http://nmap.org ) at 2013-08-07 14:38 ART
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000050s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
5432/tcp open postgresql

Intente hacer esto:
sudo iptables -I INPUT -p tcp --dport 8081 --syn -j ACCEPT

Ahora luego de ejecutar de nuevo:
sudo java -jar /usr/local/proyectos/toba/php/3ros/Jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081

Si lo escucho…, pero sigue sin imprimier. Lo mismo para el puerto 8080
sudo netstat -nat | grep LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN
tcp6 0 0 :::8081 :::* LISTEN
tcp6 0 0 :::22 :::* LISTEN
tcp6 0 0 :::5432 :::* LISTEN

Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000050s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
5432/tcp open postgresql
8081/tcp open blackice-icecap

Hola Emilio.

Evidentemente es un tema de configuracion de tu Linux. Lamentablemente es bastante complicado ayudarte porque depende mucho de los paquetes que hayas instalado y la forma de ejecutar los procesos en tu S.O.
Hay algunas cosas que me hacen ruido. Primero que te tiraba “Connection Refused” y despues no. Despues que lo tuviste q ejecutar 2 veces y forzarlo para que lo ejecute. Tambien me resulta raro que lo muestre nomenclado como tcp6. No sera un tema de permisos? Si o si tenes que correr java con ‘root’?
Esto es un buen punto para seguir viendo donde puede estar el error.

Saludos,

Gonzalo

Gustavo…, puede ser que el error sea por alguna configuracion de mi Linux, pero ustedes deciden usar JAsperReport, por lo cual tendrian que saber, o dar soporte, en los casos que pueden afectar al sistema de Jasper…, yo lo unico que puedo hacer es ejecutarlo, ver el puerto a la escucha y esperar que imprima. No me parece una respuesta valida ya que no se por donde empezar ni que hacer…, viendo en google no me aparecen soluciones transparentes los casos que encontre, dado por la generalidad dle error,no puedo especificar ningun error de guia reglejado en algun archivo de log, ni el que ejecuto para el Jasper no el syslog del sistema operativo…, no detecta error, estan vacios!!!.. y entonces que busco??, el servicio se ejecuta como root…

Ademas en mi copia vieja del G3 3.4.1 me imprime…, solo actualizo Guarani…, y no imprimo mas…, entonces que puede ser del sistema operativo???

Espero ayuda, gracias…

Podrias verificar si tenes problemas con otros reportes comunes (cualquiera de los de alumnos, por ejemplo)?
Pasame version de PHP y Postgres. Tambien los datos que te figuran en “Ayuda” → “Acerca de”.

Entiendo tu preocupación por lograr que funcione la impresión y desde acá hacemos todo lo posible por ayudarte. SIU-Guarani3 corre con multiples S.O. (cada uno con millares de confguraciones) y sobre 3 herramientas montadas sobre los mismos: PHP, Apache y Postgres, cada uno con infinidad de versiones y parches. Cada maquina de cada usuario puede tener infinitas configuraciones de lo anteriormente mencionado, con lo cual, entiendo que no te parezca una respuesta valida la que te dí, pero es lo que te puedo decir. Es muy difícil dar con la tecla teniendo todas estas variantes, por eso desde aquí, tratamos de dar el mejor soporte posible.

Saludos,
GONZALO

Gonzalo… (ahora si el nombre ;)), Te paso los datos a ver si con tu ayuda puedo obtener mas informacion que me sirva en la resulucion del problema:

Datos de G3
Aplicación
SIU-Guaraní 3
Versión Aplicación
3.5.0
Versión Base de Datos
3.5.0
Revisión SVN
rv: 12839

Consulta: el codigo de g3 llama al servicio Jasper con solo una invocacion o ademas le define por codigo el puerto explicitamente… O sea es transparente el puerto para la aplicacion?

Puedo instalar de un repositorio JasperReport en el sistema operativo y usar ese, en vez del descargado segun el instructivo…

Ejecute esto:

Esecute esto:

<?php require_once("localhost:8081/JavaBridge/java/Java.inc"); $world = new java("Test"); echo $world->query("sample"); ?>

Alcanza para confirmar que es tema esta en servicio y sist operatico?

Gracias…!!!
queres que sigamos el caso por GDS?

El tema de como usa el Jasper, es medio complejo. No sirve que lo bajes desde otro lado. Además es el mismo que el que utilizaba en la versión anterior y funcionaba.
Básicamente, usa las APIs de JASPER que soporta SIU-Toba, que corresponde a la versión 3.5.3 de JasperReposrts y esta cableado por código el servidor (127.0.0.1) y el puerto (8081). Ver “/toba/php/nucleo/lib/salidas/toba_salida_jasperreports.php”
Algo de eso esta explicado aquí:
http://repositorio.siu.edu.ar/trac/Portal-G3/wiki/NotasTecnicas/personalizaReportes

Si descargaste el paquete que sugerimos en la doc. de instalación (el que se brinda pre-armado en el wiki de SIU-TOBA), debería funcionar, salvo por algún conflicto de firewall, java (otros sw que not e mencione hoy y depende de cuales tenga instalado el cliente :wink: ) o algo por el estilo.

Imagino que no tendras archivos tocados no? (verificar con “svn st” en “/toba” y “/toba/proyectos/guarani”)
En cuanto a las versiones de PHP y Apache…cuales son?

Saludos,

Gonzalo

Te paso esto luego edito para pasarte las versiones:

[Thu Aug 08 12:06:05 2013] [error] [client 192.168.3.213] PHP Warning: require_once(3ros/JavaBridge/java/Java.inc): failed to open stream: No such file or directory in /usr/local/proyectos/toba/php/nucleo/lib/salidas/toba_vista_jasperreports.php on line 47, referer: http://192.168.3.203/guarani/3.1/aplicacion.php?ah=st5203b3af227df&ai=guarani||34000021&tz=1
[Thu Aug 08 12:06:05 2013] [error] [client 192.168.3.213] PHP Fatal error: require_once(): Failed opening required ‘3ros/JavaBridge/java/Java.inc’ (include_path=‘.:/usr/share/php:/usr/share/pear:.:/usr/local/proyectos/toba/php:.:/usr/local/proyectos/toba/proyectos/guarani/php:.:/usr/local/proyectos/toba/proyectos/guarani/personalizacion/php’) in /usr/local/proyectos/toba/php/nucleo/lib/salidas/toba_vista_jasperreports.php on line 47, referer: http://192.168.3.203/guarani/3.1/aplicacion.php?ah=st5203b3af227df&ai=guarani||34000021&tz=1

En la linea 47 justamente llama a:
require_once(“3ros/JavaBridge/java/Java.inc”);

Permisos no son…, creo que es un tema de version…, seguire investigando y si se les ocurre algo me avisan…

Hola

Existe /usr/local/proyectos/toba/php/3ros/JavaBridge/java/Java.inc ?

Emilio Luque

No te pude responder antes porque se me cayo internet pero si era ese el problema. Esta solucionado!!!

La descompresion por alguna razon que desconozco lo tira en otro path

/usr/local/proyectos/toba/php/3ros/Jasper/
Hay que moverlo despues de 3ros, no dentro de Jasper

Gracias y saludos

Me alegro que lo hayas solucionado.

Efectivamente era un problema de instalación entonces. Yo había descartado cosas así, porque como mencionaste que antes te andaba y ahora no, asumí que habías actualizado la versión del sistema con el instructivo dado sin tocar el directorio de Toba.
Volviste a instalar en otro directorio? Se borraron los archivos?

En fin, problema resuelto. Mejor así.