I trying to move HSQLDB split databases from Windows to Xubuntu.
I’m getting this error message
Error code: 1000
The driver class “org.hsqldb.jdbcDriver” could not be loaded.The additional driver class path is “file:///D:/LO%20Databases/Corsham%20Library/driver/hsqldb.jar”. at /home/buildslave/source/libo-core/connectivity/source/drivers/jdbc/JConnection.cxx:686
Searching through the cases already noted under this site then this request seems to be a follow-on from the case recorded under Test DB gets error "The driver class 'org.hsqldb.jdbcDriver' could not be loaded" - #3 by Ratslinger.
Following the guidance in that case I have gone into the Xubuntu terminal (Cntrl/Alt/T) and then
cd /media/nick/Shared/LO\ Databases/Corsham\ Library/
cp Corsham\ Library.odb xxx.zip
From the File Manager GUI then extracted the xxx.zip file and found the content.xml in the root directory.
Looking at the content.xml file I can see the line
<db:connection-resource xlink:href=“jdbc:hsqldb:file:////media/nick/Shared/LO Databases/Corsham Library/database/Corsham_Lib;default_schema=true;shutdown=true;hsqldb.default_table_type=cached;get_column_name=false” xlink:type=“simple”/>
I can also see this entry
db:data-source-setting-value
file:///D:/LO%20Databases/Corsham%20Library/driver/hsqldb.jar
</db:data-source-setting-value>
I’m guessing that this entry needs to be changed to
db:data-source-setting-value
file:////media/nick/Shared/LO Databases/Corsham Library/driver/hsqldb.jar
</db:data-source-setting-value>
Is this as simple as
1, Copy the .odb file (I already have that copy)
2, Rename .odb file to .zip
3, Extract the .zip file
4, Amend the text as above (if I have permissions to the file)
5, Create an new .zip archive
6, Rename the .zip file to the old .odb fle name?
You can find below some more background.
Any help would be appreciated.
Thanks
Nick
Background
The files were copied off the source Windows machine onto a USB stick and then copied from there onto a dual-boot Windows/Xubuntu machine with some storage shared between the two operating systems on tat machine. The databases have been put onto this shared partition.
The key steps were
1, Copy the database folders onto a USB stick
2, Copy those folders off the USB stick onto a shared partition on the dual-boot machine
3, In LibreOffice
Update the connection string string under LibreOffice Base Edit>Database>Properties
Register the database
Open the .odb file and then
Selecting Tables
I then get this message.
Error code: 1000
The driver class “org.hsqldb.jdbcDriver” could not be loaded.The additional driver class path is “file:///D:/LO%20Databases/Corsham%20Library/driver/hsqldb.jar”. at /home/buildslave/source/libo-core/connectivity/source/drivers/jdbc/JConnection.cxx:686
The reference to the jar file doesn’t appear in neither the script file nor the properties file under /media/nick/Shared/LO Databases/Corsham Library/database/.
You can find some further information about the environment below. You can see below the connection string under LibreOffice Base Edit>Database>Properties for each machine/operating system.
Environment
The database folders, with the .odb files, have been copied to a dual-boot machine with partitions for
Windows
Xubuntu 22.04
A shared drive (S: and /media/nick/Shared) that both operating systems can see. I have updated the same Writer files on this shared drive from both operating systems.
On the source Windows 10 Pro machine the LibreOffice settings are
Version: 7.6.5.2 (X86_64) / LibreOffice Community
Build ID: 38d5f62f85355c192ef5f1dd47c5c0c0c6d6598b
CPU threads: 4; OS: Windows 10.0 Build 19045; UI render: Skia/Raster; VCL: win
Locale: en-GB (en_GB); UI: en-GB
Calc: CL threaded
Also
LibreOffice Tools>Options>
Under LibreOffice>Advanced (Alt/F12) Class Path - empty
Under LibreOffice Base the database is registered
LibreOffice Base Edit>Database>Properties
Connection string jdbc: hsqldb:file:///D:\LO Databases\Corsham Library\database/Corsham_Lib;default_schema=true;shutdown=true;hsqldb.default_table_type=cached;get_column_name=false
JDBC Driver Class org.hsqldb.jdbcDriver
LibreOffice Base Edit>Database>Connections
Database type: JDBC
On the next page the driver-specific box is empty and the JDBC driver class is org.hsqldb.jdbcDriver
On the target dual-boot machine
Version: 7.6.6.3 (X86_64) / LibreOffice Community
Build ID: d97b2716a9a4a2ce1391dee1765565ea469b0ae7
CPU threads: 8; OS: Linux 6.5; UI render: default; VCL: gtk3
Locale: en-GB (en_GB.UTF-8); UI: en-US
Calc: threaded
LibreOffice Tools>Options>
Under LibreOffice>Advanced (Alt/F12) Class Path - empty
Under LibreOffice Base the database is registered with the path "/media/nick/Shared/LO Databases/Corsham Library/Corsham Library.odb"
LibreOffice Base Edit>Database>Properties
Connection string jdbc:
hsqldb:file:////media/nick/Shared/LO Databases/Corsham Library/database/Corsham_Lib;default_schema=true;shutdown=true;hsqldb.default_table_type=cached;get_column_name=false
JDBC Driver Class org.hsqldb.jdbcDriver
LibreOffice Base Edit>Database>Connections
Database type: JDBC
On the next page the driver-specific box is empty and the JDBC driver class is org.hsqldb.jdbcDriver