Error con Jasper en Trámites de Certificación

Gente les escribimos esperando nos puedan ayudar con un error que se presentó de manera espontánea. Ingresamos en “Actualizar Trámites de Certificación” y filtramos por un DNi, seleccionamos la opción
Acción → Emitir Certificado Final de Materias (el cual está personalizado) y presionamos Guardar no nos muestra el certificado. El JavaBridge se encuentra activo y funciona para todos los otros certificados.

Al realizar un Debug del JavaBridge nos tira lo siguientre:

Mar 29 12:17:14 VMBridge DEBUG: unref: java.lang.Exception: CreateInstance failed: new java.lang.Integer((o:String)[o:String]). Cause: java.lang.NumberFormatException: For input string: "0073/2023" VM: 11.0.18@https://ubuntu.com/
Mar 29 12:17:14 VMBridge DEBUG: contextfactory: context destroyed (remove context factory): ContextFactory: Context# 1@, credentials: ContextServer: , SimpleContextFactory: class php.java.bridge.http.SimpleContextFactory, current loader: jdk.internal.loader.ClassLoaders$AppClassLoader@55054057

Entendemos por el Debug que el error está en java.lang.NumberFormatException: For input string: “0073/2023” pero el tema es que ya verificamos la definición del campo en el reporte y es un String, no entendemos el porque de la excepción si en ningún momento manejamos números para ese campo. Cuando editamos el reporte compila perfecto y cuando se ejecuta el mismo desde el iReport el mismo funciona, por lo que no entendemos el origen del error.

Verificamos los Logs de apache para ver si había problemas de permisos y no los hay.

Esto nos está complicando ya que no podemos emitir certificados y seguir con el circuito de egresados.

Tendrían alguna idea de dónde puede estar el error?

Estamos con la versión 3.21.0

Muchas gracias!

Hola Javier,

Ese string “0073/2023” a qué corresponde? Encontré esto: https://foro.comunidad.siu.edu.ar/index.php?topic=15207.

Saludos, Florencia.

Florencia, muchas gracias, es exactamente lo mismo, con la diferencia que cambiamos el tipo de dato en la tabla mce y sigue sin funcionar.

El debug nos tira lo siguiente:

Mar 30 15:05:38 VMBridge DEBUG: unref: FATAL: UNDECLARED RuntimeException PASSED TO PHP. java.lang.Exception: CreateInstance failed: new java.math.BigDecimal((o:String)[o:String]). Cause: java.lang.NumberFormatException: Character / is neither a decimal digit number, decimal point, nor "e" notation exponential mark. VM: 11.0.18@https://ubuntu.com/

La verdad es que estamos perdidos con este tema ya que esto funcionaba de manera correcta y se hicieron cambios en el reporte pero no en ese campo (o sea el campo nro expediente).

Buenos días Javier,
cuando editaste el jrxml lo hiciste con el ireport? que versión?

podes corroborar en el archivo jrxml te haya quedado el field nro_expediente como tipo string y no como integer?

probá también cambiando el / por un - a ver si te acepta el otro caracter como divisor (en la operación de guarani)

Espero tu respuesta, si podes pasarme el archivo jrxml que emite el Certificado Final de Materia me gustaría verlo

Saludos!

Buen Dia Florencia,

[ol]- Se edito el jrxml con ireport version 5.6

  • En el archivo jrxml el campo con conflicto es este <field name=“nro_certif_pm” class="java.lang.Strign >, que esta como String el mismo se alimenta del campo nro_registro_diploma_uni que se encuentra en la tabla sga_certificados_otorg. Corroboramos este campo en la tabla mce_campos y el tipo de datos que tenia era ‘E’, que representa a un entero; hicimos el Update de ese campo a tipo de dato ‘S’
  • Hemos probado solo poniendo un numero y error persiste
  • Adjunto el jrxml del Certificado Final, este a su vez tiene otros subReports, el campo con inconveniente esta unicamente el CertificadoFinal.jrxml[/ol]

Saludos!


CertificadoFinal_UNT.rar (14.7 KB)

Buen Dia,
Sumo otra inquietud, al probar diferentes escenarios en ireport, que desde gestión generar error, verificamos que los mismos no se producen.
Alguna sugerencia?