Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
I have a talend job with only one component- tAccessConnection
the access database is saved at my local PC
Database: "C:/TOS_BD-20180116_1512-V6.5.1/workspace/test.accdb"
UserName: "" Password: ****
MS Access Databse 32 bit ODBC driver was installed ( My PC is 64 bit)
I got the following error, Please help.
Exception in thread "main" java.lang.NoClassDefFoundError: com/healthmarketscience/jackcess/CryptCodecProvider
at org.talend.ucanaccess.encrypt.CryptCodecOpener.open(CryptCodecOpener.java:16)
at net.ucanaccess.jdbc.DBReference.<init>(DBReference.java:158)
at net.ucanaccess.jdbc.DBReferenceSingleton.loadReference(DBReferenceSingleton.java:57)
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:103)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at adhoc_cs25_00009.cs25_00009_0_1.CS25_00009.tAccessConnection_1Process(CS25_00009.java:603)
at adhoc_cs25_00009.cs25_00009_0_1.CS25_00009.runJobInTOS(CS25_00009.java:3128)
at adhoc_cs25_00009.cs25_00009_0_1.CS25_00009.main(CS25_00009.java:2874)
Caused by: java.lang.ClassNotFoundException: com.healthmarketscience.jackcess.CryptCodecProvider
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
[statistics] disconnected
at java.lang.ClassLoader.loadClass(Unknown Source)
... 9 more
No, I did not do anything in the import command.
What I did is in Basic Settings of tLibraryLoad, Browse a Module File: ( find that jackcess-encrypt-2.0.0.jar), then run the talend job (with tLibraryLoad component).
What should I write in the import command? ( Advanced settings of tLibraryLoad, right?)
Thank you,
Jane
Hi,
Could you please double check whether all the associated jars for the Access components were installed by you?
Usually when you are opening the component, if there is any missing jar, an orange ribbon will be there asking to install the missing jars from internet.
Could you please check it? also please verify the Modules view of Talend as shown in below link
https://help.talend.com/reader/9X9IRskQ0CYqyLOnf~MsXw/3S78DVaGGLL7uKyXjJn0dw
Warm Regards,
Nikhil Thampi
Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved 🙂
Hi Nikhil,
Thank you for your reply. I did install all necessary jars. please see below picture. Thank you.
Hi Nikhil,
When I run the talend job, it failed though the tAccessConnection looks ok. Below the screenshot. Thank you for your help
Hi,
Could you please add the missing library mentioned in the error using tLibraryLoad and try to run the job again?
Warm Regards,
Nikhil Thampi
Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved 🙂
Hi Nikhil,
Could you please tell me which library to install?
I use tLoadLibrary and installed jackcess-encrypt-2.1.0.jar, jackcess-2.1.0.jar and ucanacess-2.0.9.5.jar, but still got error.
Exception in thread "main" java.lang.NoClassDefFoundError: com/healthmarketscience/jackcess/CryptCodecProvider
at org.talend.ucanaccess.encrypt.CryptCodecOpener.open(CryptCodecOpener.java:16)
at net.ucanaccess.jdbc.DBReference.<init>(DBReference.java:158)
at net.ucanaccess.jdbc.DBReferenceSingleton.loadReference(DBReferenceSingleton.java:57)
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:103)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at adhoc_cs25_00009.testacessdb_0_1.TestAcessDB.tAccessConnection_2Process(TestAcessDB.java:546)
at adhoc_cs25_00009.testacessdb_0_1.TestAcessDB.runJobInTOS(TestAcessDB.java:2341)
at adhoc_cs25_00009.testacessdb_0_1.TestAcessDB.main(TestAcessDB.java:2087)
Caused by: java.lang.ClassNotFoundException: com.healthmarketscience.jackcess.CryptCodecProvider
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
Hi,
The error is saying that the class com.healthmarketscience.jackcess.CryptCodecProvider is missing. Could you please install any jar containing this class using tLibrarayLoad?
For example, http://www.java2s.com/Code/Jar/j/Downloadjackcessencrypt200jar.htm
Please double check the details of the Jar before installing to make sure that it is the right one (including the above example).
Warm Regards,
Nikhil Thampi
Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved 🙂
Hi Nikhil,
I downloaded that jackcess-encrypt-2.0.0.jar.zip from http://www.java2s.com/Code/Jar/j/Downloadjackcessencrypt200jar.htm
After extracting the zip file to jar file, I used tLibraryLoad and load the jackcess-encrypt-2.0.0.jar file.
However, I still got the same error after re-open the talend studio. Please help. Thank you
Hi,
Did you add the import command in the advanced section of tLibraryLoad?
Warm Regards,
Nikhil Thampi
Please appreciate our Talend community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved 🙂
No, I did not do anything in the import command.
What I did is in Basic Settings of tLibraryLoad, Browse a Module File: ( find that jackcess-encrypt-2.0.0.jar), then run the talend job (with tLibraryLoad component).
What should I write in the import command? ( Advanced settings of tLibraryLoad, right?)
Thank you,
Jane