By the way, developers can also make use of Groovy functionality, in Jabaco. Instead of the Java Class.forName() syntax, you can make use of Groovy's newInstance(). I'll put together a complete sample if anyone needs one, but it's something like the following. These are snippets of a utility that imports CSV files into a Sqlite table:
'/*
' Install Groovy and attach Jars (will make compiling much slower, but you can decide if it's worth it)
' groovy-sql-2.1.7.jar
' groovy-2.1.7.jar
'*/
Import groovy.sql.DataSet
Import groovy.sql.Sql
Import java.io.*
Import java.sql.*
Import java.sql.ResultSetMetaData
Import org.sqlite.JDBC
...
...
...
sqlSQLiteInstance = groovy#sql#Sql.newInstance("jdbc:sqlite:" + sSqliteFileName, "org.sqlite.JDBC" )
sqlSQLiteInstance.execute( "DELETE FROM " + sTableName )
dsSQLite = sqlSQLiteInstance.dataSet( sTableName )
rsSQLite = sqlSQLiteInstance.getConnection.getMetaData().getColumns( Null, Null, sTableName, Null )
bResult = rsSQLite.next()
Do Until Not bResult
sColumnName = rsSQLite.getString( "COLUMN_NAME" )
sColumnType = rsSQLite.getString( "TYPE_NAME" )
lsColumnNames.add( sColumnName )
lsColumnTypes.add( sColumnType )
System.out.println sColumnName & ", "
println sColumnType
bResult = rsSQLite.next()
Loop
...
...
...
csvrReader.close()
sqlSQLiteInstance.close()