PDA

View Full Version : [java]impossibile connettersi a mysql


sukoy27k
08-12-2005, 23:09
getDriver();

Connection connection=null;
try{
connection=(Connection)java.sql.DriverManager.getConnection("jdbc:mysql://10.0.0.3:3306/laboratori?user=root&password=");
}catch(SQLException e){
System.err.println("Impossibile ottenere una connessione a mysql");
out.writeObject("Impossibile ottenere una connessione a mysql "+e.getMessage());
out.flush();
}

dove getDriver(); è un metodo della mia servlet;
public static void getDriver()
{
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
}catch(Exception e){
System.out.println("Impossibile montare drive JDBC");
}
}

sto utilizzzando il mysql di easyphp,dovrebbe essere lo stesso.
Ho controllato:
la porta di default 3306
la tabella degli utenti:unico utente root senza password
ho sostituito localhost con l'indirizzo assegnato dal dhcp all mia skrete

l'errore restituito è No suitable driver.

la tabella laboratori esiste.

Non avendo a disposizione una shell per controllare i messsaggi di errori della servlet,me li faccio inviare all'aplet che me li stampa nella console standard.

Voi che dite provo ad installare mysql standard?

sukoy27k
08-12-2005, 23:12
effettivamente Suitable mho che ci penso è non adatto,ma perchè?
da quanto ne sò easyphp utilizza una versione di mysql lite,ma uguale nel motore,bha significa che viene riconosciuta in modo diverso a quanto pare.
domani monto server mysql nuovo e faccio sapere.

kingv
09-12-2005, 07:58
il problema non è il server ma il client, non hai in classpath i driver jdbc di mysql ;)

Mason
09-12-2005, 12:25
non c'e bisogno cmq di instanziare la nuova classe, il driver viene gia registrato con la forName(), almeno nella 1.4.2

A program can also explicitly load JDBC drivers at any time. For example, the my.sql.Driver is loaded with the following statement:

Class.forName("my.sql.Driver");

sukoy27k
09-12-2005, 15:22
non c'e bisogno cmq di instanziare la nuova classe, il driver viene gia registrato con la forName(), almeno nella 1.4.2

A program can also explicitly load JDBC drivers at any time. For example, the my.sql.Driver is loaded with the following statement:

Class.forName("my.sql.Driver");
lo sapevo,faceva parte delle mie prove.

cmq continua a non funzionare,il jar è inserito nel class path non capisco cosa debba fare per farlo funzionare.

kingv
09-12-2005, 15:42
stai usando il driver ufficiale?
non devi mettere in classpath il file che scarichi da internet ma il .jar che e' al suo interno.
fai qualche prova, il problema è quello.

sukoy27k
09-12-2005, 15:46
stai usando il driver ufficiale?
non devi mettere in classpath il file che scarichi da internet ma il .jar che e' al suo interno.
fai qualche prova, il problema è quello.
e infatti quello sto usando,ho incluso mysql-connector-java-3.1.12.jar,adesso addirittura l'ho portato in lib in modo che lo vedesse come libreria interna e non esterna ma cmq nonvà :confused:

sukoy27k
09-12-2005, 15:49
oltre al messaggio che mi faccio inviare "driver non montato",mi sono fatto inviare e.getmessage() e dice semplicemente com.mysql.jdbc.Driver

sukoy27k
09-12-2005, 16:04
bhe la minchiaggine non ha mai fine :P

mi ero dimenticato di inserire il jar nella cartella lib di Tomcat asdadaasa