Over the last couple of years, I’ve received A LOT of invaluable assistance from the helpful experts here as I biult a small hobby DB. I’ve now reached a point where the limitations and clunkiness of that ‘practice’ DB have prompted me to begin prepping for a new version, and in doing so I have thought about the one piece of advice most often given here to any and all of my queries (pun unavoidable) : “Don’t use embedded”
Having watched the excellent Base video turial series at thefrugalcomputerguy.com where he connected Base to MySQL, and having read the sections in tyhe Base guide about connecting to external DBs, I no longer feel overwhelmed by the idea. I’d love to combine the familiar GUI of Base with the added stability of an external DB, but I have already run into some confounding problems.
First, the JDBC drivers. On the LO extensions page, it lists several driver extensions needed to enaable LO to connect with the latest versions of Firebird, HSQLDB and others. All of those extensions said that the first thing that had to be installed was the latest JDBC driver. So I downloaded and attempted to install it. I got the following error message:
(com.sun.star.uno.RuntimeException) { { Message = "[jni_uno bridge error] UNO calling Java method writeRegistryInfo: non-UNO exception occurred: java.lang.UnsupportedClassVersionError: io/github/prrvchr/jdbcdriver/RegistrationHandler has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0\X000ajava stack trace:\X000ajava.lang.UnsupportedClassVersionError: io/github/prrvchr/jdbcdriver/RegistrationHandler has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0\X000d\X000a\X0009at java.lang.ClassLoader.defineClass1(Native Method)\X000d\X000a\X0009at java.lang.ClassLoader.defineClass(Unknown Source)\X000d\X000a\X0009at java.security.SecureClassLoader.defineClass(Unknown Source)\X000d\X000a\X0009at java.net.URLClassLoader.defineClass(Unknown Source)\X000d\X000a\X0009at java.net.URLClassLoader.access$100(Unknown Source)\X000d\X000a\X0009at java.net.URLClassLoader$1.run(Unknown Source)\X000d\X000a\X0009at java.net.URLClassLoader$1.run(Unknown Source)\X000d\X000a\X0009at java.security.AccessController.doPrivileged(Native Method)\X000d\X000a\X0009at java.net.URLClassLoader.findClass(Unknown Source)\X000d\X000a\X0009at java.lang.ClassLoader.loadClass(Unknown Source)\X000d\X000a\X0009at java.lang.ClassLoader.loadClass(Unknown Source)\X000d\X000a\X0009at java.net.FactoryURLClassLoader.loadClass(Unknown Source)\X000d\X000a\X0009at java.lang.ClassLoader.loadClass(Unknown Source)\X000d\X000a\X0009at com.sun.star.comp.loader.RegistrationClassFinder.find(RegistrationClassFinder.java:53)\X000d\X000a\X0009at com.sun.star.comp.loader.JavaLoader.writeRegistryInfo(JavaLoader.java:376)\X000d\X000a", Context = (com.sun.star.uno.XInterface) @0 } }
This feels like stumbling at the very first baby step, so while I continue to sketch out my DB design and work out what I want it to be able to do, how do I fix this problem so that I can coonect to more recent external databases?