I have tried connecting to teredata DB through JDBC. I am using the jars 'terajdbc4.jar' and 'tdgssconfig.jar', but I am getting a ClassNotFoundException and NoClassDefFoundError for something kind of com.ncr.teradata.jtdgss.TdgssManager is not found.
Please help me to find a solution. I have provided my code snippet followed by the error log. The user name and passwords are correct as connect to the teradata DB through UNIX using that ID.
public class HelloTeradataJDBC {
public static void main(String[] args) throws Exception {
String url="jdbc:teradata://10.10.***.**/DBS_PORT= 1025/DATABASE= ******/TMODE=ANSI,CHARSET=UTF8";
try{
Class.forName("com.ncr.teradata.TeraDriver");
Connection conn=DriverManager.getConnection(url, "*****", "******");
//Connection conn=DriverManager.getConnection(connurl, "javauser1", "password1");
String query="select * from xi.san_emp";
PreparedStatement stmt=conn.prepareStatement(query);
ResultSet rs=stmt.executeQuery();
while(rs.next()) {
String col1=rs.getString(1);
System.out.println("col1="+col1);
}
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
}
Error:
Exception in thread "main" java.lang.NoClassDefFoundError: com/ncr/teradata/jtdgss/TdgssManager
at com.ncr.teradata.TeraEncrypt.getTDgssVersion(TeraEncrypt.java:548)
at com.ncr.teradata.jdbc_4.parcel.ConfigFeatureTdgss.<init>(ConfigFeatureTdgss.java:44)
at com.ncr.teradata.jdbc_4.statemachine.InitDBConfigState.action(InitDBConfigState.java:68)
at com.ncr.teradata.jdbc_4.statemachine.LogonController.run(LogonController.java:50)
at com.ncr.teradata.jdbc_4.TDSession.<init>(TDSession.java:150)
at com.ncr.teradata.jdbc_3.ifjdbc_4.TeraLocalConnection.<init>(TeraLocalConnection.java:89)
at com.ncr.teradata.jdbc.ConnectionFactory.createConnection(ConnectionFactory.java:50)
at com.ncr.teradata.TeraDriver.connect(TeraDriver.java:214)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at HelloTeradataJDBC.main(HelloTeradataJDBC.java:15)
Caused by: java.lang.ClassNotFoundException: com.ncr.teradata.jtdgss.TdgssManager
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 11 more