Newsgroup: it.comp.java
Titolo: Dove sbaglio? (net.sourceforge.jtds.jdbc.Driver)

Salve a tutti
Tramite cut&paste su internet, ho relizzato una classe per interrogare 
un DB MSSQL. 
La compilazione va a buon fine, ma al momento dell'esecuzione mi da il 
seguente errore:
Error finding database Driver
java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
	at java.net.URLClassLoader$1.run(URLClassLoader.java:199)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:141)
	at DB_Connect.main(DB_Connect.java:24)
Capisco che non trova il driver, ma io il file "jtds-1.1.jar" l'ho 
incluso nel progetto, ma perchè non lo trova?
Vi incollo anche la classe qui di seguito:
import java.sql.*;
import java.lang.*;
 
public class DB_Connect
{      
    public static void main(String args[])
    {
       Connection connection = null;
        try
        {
                String dataBaseDriver 
="net.sourceforge.jtds.jdbc.Driver"; //database driver
                String url ="jdbc:jtds:sqlserver://
marge.tizio.it/
seisDB";
                String username ="user";
                String password ="pass";
 
                //Load the JDBC Driver
                Class.forName(dataBaseDriver);
 
                //Create a connection to the database
                connection = DriverManager.getConnection
(url,username,password);
 
                //create a Resultset to get data from dbase                
                Statement stmt = connection.createStatement();
 
                //read result back into the result set
				ResultSet rs = stmt.executeQuery("SELECT * FROM 
network");
 
                while(rs.next())
                {
                     String str = rs.getString("username");     
                     //find me in the users table :)
                     if(str.equals("chris"))
                     {
                             System.out.println ("Dude found");
                     }
 
                     //prints out all of the column from the resultset
                     System.out.println(str);
				}   
		}
    catch(ClassNotFoundException e)
    {
            System.out.println("Error finding database Driver");
            e.printStackTrace();
    }
    catch(SQLException e)
    {
           System.out.println("Error connecting to database");
           e.printStackTrace();
    }
 }
}

 incluso nel progetto, ma perchè non lo trova?
Perchè la classe indicata non è nel classpath, non ci sono tante 
alternative a cui girare intorno.
Tu dici di aver aggiunto il jar al progetto, sei certo che questa 
operazione sul tuo IDE permetta di aggiungerlo al classpath a runtime?

 ha scritto:

Bhè, io penso di averlo aggiunto... però visto che non funziona, il dubbio 
mi viene! ;-)
Come ho scritto in un post seguente (titolo: "ma dove sta la CLASSPATH?") 
impostandogli la classpath a mano funziona, quindi ora mi resta solo da 
capire dove (utilizzo una bash sotto MAC) impostare la CLASSPATH 
automaticamente!

 automaticamente!
nella tua home directory crea un file .bash_profile e scrivici dentro
export CLASSPATH="(il path)"
e poi rifai il login
ciao ...
-- 
#include <stdio.h>
int main(void){char c[]={10,65,110,116,111,110,105,111,32,98,97,114,98,111,110,
101,32,60,104,105,110,100,101,109,105,116,64,116,105,115,99,97,108,105,110,101,
116,46,105,116,62,10,10,0};printf("%s",c);return 0;}

 e poi rifai il login
Ho fatto come mi hai detto...
1)export CLASSPATH=/System/Library/Frameworks/JavaVM.framework/Versions/1.4.2/
Classes/jtds-1.1.jar
2)ho rifatto il login
3)quando lancio: "java DB_Connect ottengo" il seguente messaggio:"Exception in 
thread "main" java.lang.NoClassDefFoundError: DB_Connect"
se però eseguo:
"java -classpath .:/System/Library/Frameworks/JavaVM.framework/Versions/1.4.2/
Classes/jtds-1.1.jar DB_Connect"
Tutto funziona bene...
mi puoi dare qualche altro consiglio?
Grazie.

 Grazie.
