While Jackcess still only requires Java 8+, as of the 4.0.0 release it now includes an Automatic-Module-Name of com.healthmarketscience.jackcess in its manifest. This allows it to be used safely in the module path for Java 9+ projects.
While Jackcess Encrypt still only requires Java 8+, as of the 4.0.0 release it now includes an Automatic-Module-Name of com.healthmarketscience.jackcess.crypt in its manifest. This allows it to safely be used in the module path for Java 9+ projects. These changes correspond with the changes in Jackess 4.x.
As a consequence of supporting Java 9+ modules, the classes in this project needed to be moved to a new package in order to avoid the "split module" problem. The primary classes in this project are now in the com.healthmarketscience.jackcess.crypt package. This is a breaking change with respect to the 3.x release series.
In your readDatabase method, notice that you do not have a balanced pair of double quotes. I used jackcess 1.2.8, commons-lang 2.6 and commons-logger 1.1 as my imported libraries and I am running with Java 1.6.
It turns out that while jackcess-encrypt is source compatible with bouncycastle 1.52, it is not binary compatible. See this feature request for more details. Basically (for now), you need to use a version of bouncycastle 1.50 or lower.
Hi,
it seems you need to write your own JackcessOpenerInterface implementation and then bundle it with the original driver. Once this is done you need to put the new driver together with the two additional libraries (jackcess-encrypt-2.1.1.jar bcprov-jdk15on-153.jar) into a folder. You then need to register this folder via the KNIME Preferences (see screenshot). Finally use a connection string like the following in the Database Connector node: jdbc:ucanaccess://Z:/SQL_DATA/Mdaemon.mdb;jackcessOpener=yourPackage.example.CryptCodecOpener
Now KNIME is using your driver with its own OpenerInterface.
Bye
Tobias
However, I get the following error when trying to connect: com.healthmarketscience.jackcess.impl.UnsupportedCodecException: Decoding not supported. Please choose a CodecProvider which supports reading the current database encoding
aa06259810