Tengo un error que se muestra en el log y no me permite ejecutar una query desde Groovy Script: sql.executeQuery():GRAVE: Message: Operation not allowed after ResultSet closed

1
0
-1

Buenas tardes a todos.
Soy Nuevo en Bonita 7.2, estoy atascado en intentar mostrar los valores en una tabla personalizada desde una base de datos Mysql
Estoy ejecutando un Script groovy desde Bonita 7.2 y obtengo el siguiente error: GRAVE: Message: Operation not allowed after ResultSet closed . Y no entiendo por qué me da este error si no he cerrado el resultSet.

Este es mi GroovyScript:

  1. String consulta = "SELECT * FROM reportes";
  2.  
  3.  
  4. SMSOpConfig smsOpConfig = new SMSOpConfig();
  5. SMSOpBase.connectSMS(smsOpConfig.getDBUrl(), smsOpConfig.getDBUser(), smsOpConfig.getDBPass());
  6. //SMSOpBase.connectSMS();
  7. loggerJava.info("Notificacion: desc");
  8. //+notificacionRiesgo.getDescripcion() +" , titulo: "+ notificacionRiesgo.getTitulo() +" , codigo: "+notificacionRiesgo.getCodigo(), notificacionRiesgo.getOperador(),notificacionRiesgo.getTipoOperacion(), notificacionRiesgo.getMatricula(), notificacionRiesgo.getVuelo(), notificacionRiesgo.getCallSign(), notificacionRiesgo.getModerador(), notificacionRiesgo.getEstado(), notificacionRiesgo.getObligatoriedad(), notificacionRiesgo.getIncidenciaPadre(), notificacionRiesgo.getDni(),notificacionRiesgo.getNombre(),notificacionRiesgo.getApellidos(),notificacionRiesgo.getCorreo(),notificacionRiesgo.getTipo()+" , asunto: "+notificacionRiesgo.getAsunto());
  9. resultSet = SMSOpBase.getConn().executeQuery(consulta);
  10. // (consulta,notificacionRiesgo.getId(),notificacionRiesgo.getDescripcion(),notificacionRiesgo.getTitulo(),notificacionRiesgo.getCodigo(), notificacionRiesgo.getOperador(),notificacionRiesgo.getTipoOperacion(), notificacionRiesgo.getMatricula(), notificacionRiesgo.getVuelo(), notificacionRiesgo.getCallSign(), notificacionRiesgo.getModerador(), notificacionRiesgo.getEstado(), notificacionRiesgo.getObligatoriedad(), notificacionRiesgo.getIncidenciaPadre(), notificacionRiesgo.getDni(),notificacionRiesgo.getNombre(),notificacionRiesgo.getApellidos(),notificacionRiesgo.getCorreo(),notificacionRiesgo.getTipo(),notificacionRiesgo.getAsunto(),new Date());
  11. while (resultSet.next()) {
  12. loggerJava.info("************************************** REPORTES id: " + resultSet.getInt("id") +
  13. "entidad_reportante: " + resultSet.getString(2) +
  14. " entidad_reportante_name: " + resultSet.getString(3));
  15. }
  16. // SMSOpBase.closeConnection();
  17. loggerJava.info("#########################################################################################################script eNTRADA , scriptLeeReportes");
  18. /*
  19. logger.error("-----ERROR guardar en bbdd"); */
  20. } catch (e2) {
  21. loggerJava.error("ERROR: scriptLeeReportes Notificación de BBDD*********************************");
  22. // loggerJava.error("Cause: "+ e2.getCause());
  23. loggerJava.error("Message Localized: "+ e2.getLocalizedMessage().toString());
  24. loggerJava.error("Message: "+ e2.getMessage().toString());
  25. loggerJava.error("GetStacktrace.ToString: "+ e2.getStackTrace().toString());
  26. }finally{
  27. try{resultSet.close();}catch(Exception e){}
  28. try{SMSOpBase.closeConnection();}catch(Exception e1){
  29. loggerJava.error("ERROR: scriptLeeReportes Notificación de BBDD*********************************");
  30. // loggerJava.error("Cause: "+ e2.getCause());
  31. loggerJava.error("Message Localized: "+ e1.getLocalizedMessage().toString());
  32. loggerJava.error("Message: "+ e1.getMessage().toString());
  33. loggerJava.error("GetStacktrace.ToString: "+ e1.getStackTrace().toString());
  34. }
  35. }

Aqui está el StackTrace completo:

  1. GRAVE: GetStacktrace.ToString: [com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1074), com.mysql.jdbc.SQLError.createSQLException(SQLError.java:988), com.mysql.jdbc.SQLError.createSQLException(SQLError.java:974), com.mysql.jdbc.SQLError.createSQLException(SQLError.java:919), com.mysql.jdbc.ResultSetImpl.checkClosed(ResultSetImpl.java:804), com.mysql.jdbc.ResultSetImpl.next(ResultSetImpl.java:6986), java_sql_ResultSet$next.call(Unknown Source), org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48), org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113), org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117), Script1.run(Script1.groovy:93), groovy.lang.GroovyShell.evaluate(GroovyShell.java:591), groovy.lang.GroovyShell.evaluate(GroovyShell.java:629), groovy.lang.GroovyShell.evaluate(GroovyShell.java:600), org.bonitasoft.connectors.scripting.GroovyScriptConnector.executeBusinessLogic(GroovyScriptConnector.java:48), org.bonitasoft.engine.connector.AbstractConnector.execute(AbstractConnector.java:77), org.bonitasoft.engine.core.connector.impl.SConnectorAdapter.execute(SConnectorAdapter.java:73), org.bonitasoft.engine.connector.impl.ConnectorExecutorImpl$ExecuteConnectorCallable.call(ConnectorExecutorImpl.java:205), org.bonitasoft.engine.connector.impl.ConnectorExecutorImpl$ExecuteConnectorCallable.call(ConnectorExecutorImpl.java:176), java.util.concurrent.FutureTask.run(FutureTask.java:262), java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145), java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615), java.lang.Thread.run(Thread.java:745)]

Saludos y gracias

No answers yet.
Notifications