Why is DB2 Type 4 JDBC Driver looking for native library db2jcct2?
Solution 1
I suspect the problem is that you haven't told it to use the type 4 driver - the same jar file contains both type 4 and type 2 drivers, I believe.
Try:
main_db2_data_source.setDriverType(4);
Solution 2
The db2 driver needs another jar that includes the license.
This license controls the connection type. If you are going to use "db2 connect" to connect to a mainframe as an i series you should use the corresponding license. If you are going to connect to a Linux UNIX or Windows server, the license is included when you get the "Data server client for JDBC"
Solution 3
Also try this:
Goto Configure Build Path --> Libraries
--> JRE System Libraries
--> Native Library Location : Set this to %DB2HOME%/BIN
(which is where db2jcct2.dll is saved)
necromancer
Updated on July 06, 2022Comments
-
necromancer almost 2 years
I thought the Type 4 JDBC driver was pure Java and wouldn't require native libraries.
When I put db2jcc4.jar in the WEB-INF/lib directory of my Tomcat app packaged as a .war file, I get the following error when attempting to use the app:
Got SQLException: com.ibm.db2.jcc.am.SqlException: [jcc][10389][12245][4.12.55] Failure in loading native library db2jcct2, java.lang.UnsatisfiedLinkError
The relevant application code is as follows and the exception is thrown due to the last line in the listing:
import com.ibm.db2.jcc.DB2SimpleDataSource; // ... DB2SimpleDataSource main_db2_data_source = new DB2SimpleDataSource(); main_db2_data_source.setUser(main_database_user); main_db2_data_source.setPassword(main_database_password); main_db2_data_source.setServerName(main_database_host); try { Integer main_database_port_integer = Integer.parseInt(main_database_port); main_db2_data_source.setPortNumber(main_database_port_integer); } catch (NumberFormatException exception) { throw new WebException("..."); } Connection main_connection = null; try { main_connection = main_db2_data_source.getConnection();
-
necromancer over 12 yearsthanks, this wasn't the issue since i was not connecting to a mainframe, but at some point of time in the future i will need to connect and your advice will come in useful then.