JAVA-JDBC.....non va e pergiunta senza errori[RISOLTO]

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
dottor3
Linux 1.x
Linux 1.x
Messaggi: 162
Iscritto il: dom 27 lug 2008, 12:59
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: kde 4.5

JAVA-JDBC.....non va e pergiunta senza errori[RISOLTO]

Messaggio da dottor3 »

Ciao a tutti
ho installato JDBC come da manuale e settato il PATH come da manuale.
Scrivo il programmello pe connettermi a mysql, si compila senza errore alcuno e al momento dell'avvio si blocca senza dare segni di vita alcuni.

Eseguendo il programma con l'opzione -verbosse vedo che viene caricato tutto il necessario ma poi si blocca.

Ho provato anche con listati elementari ma niente......non so più cosa pensare.

Grazie a tutti
Ultima modifica di dottor3 il mer 16 gen 2013, 0:52, modificato 1 volta in totale.

ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Re: JAVA-JDBC.....non va e pergiunta senza errori

Messaggio da ilmich »

per poterti aiutare posta qualcosa in piu'... tipo i settaggi delle variabili di ambiente... il codice che usi... :)

anche sapere se mysql è impostato per accettare connessioni di rete nn guasterebbe :) (di default in slackware non è cosi' )
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Avatar utente
dottor3
Linux 1.x
Linux 1.x
Messaggi: 162
Iscritto il: dom 27 lug 2008, 12:59
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: kde 4.5

Re: JAVA-JDBC.....non va e pergiunta senza errori

Messaggio da dottor3 »

I settaggi sono quelli classici con la JDK in /usr/lib64/, con relativi $PATH al posto giusto.
Sono sicuro non siano i settaggi perchè il l'output in modalità verbose dice questo:
[Loaded com.mysql.jdbc.ConnectionProperties from file:/usr/lib64/jdk1.7.0.02/jre/lib/ext/mysql-connector-java-5.1.22-bin.jar]
quindi il DRIVER viene caricato.
il codice di prova connessione è questo:

Codice: Seleziona tutto

public class test {
    public static void main(String[] args){
        
        Connection con = null;
        try{
        con = DriverManager.getConnection("jdbc:mysql://localhost/arfea?user=root&password=l0r3nz0");
        System.out.println("Connesso");
        }catch(SQLException e){
            System.out.println(e.getMessage());
        }
    }

}
Questo snippet si ferma, come gli altri, quando viene invocato DriverManager.getConnection().
QUELLO CHE MI FA INCAZZARE é CHE NON ESISTE NESSUN ERRORE!!!!!!
Ho provato pure con JDB ma niente........
l'ultima cosa caricata visibile in modalità verbose è questa:
[Loaded sun.net.sdp.SdpProvider from /usr/lib64/jdk1.7.0.02/jre/lib/rt.jar]

MySQL è impostato correttamente perchè con PHP lavora correttamente e anche in remoto funziona.
:banghead: :banghead: :banghead: :banghead:

ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Re: JAVA-JDBC.....non va e pergiunta senza errori

Messaggio da ilmich »

a prima vista dal codice che ho visto non hai caricato il driver mysql.

sostanzialmente la classe DriverManager è un registro di driver jdbc (che tipicamente viene usato per un solo driver e in questo caso mysql, ma tecnicamente puo' essere usata come factory per piu' driver jdbc se per esempio hai multipli datasource).

quando chiami il metodo getConnecion() con al suo interno una url, chiedi a questo particolare registro di scansionare tutti i driver che si sono registrati e restituirti il primo che riesce a collegarsi a quella url (infatti tutte le url jdbc sono del tipo jdbc:tipo_database:etcetcetcetc)

nel tuo caso nn vedo la parte che registra il driver mysql a questa factory, e forse potrebbe essere la causa del tuo problema.

questa parte è in effetti poco intuitiva, ma si basa sul fatto che in java nel 99% dei casi l'esecuzione del codice è lazy, ovvero se non fai riferimento a quella determinata classe niente in essa contenuto viene eseguito.
percio' aver messo nel classpath il driver nn è sufficiente per dire che è tutto ok.
devi eseguire la parte di registrazione che tipicamente è contenuta in una classe ad-hoc che nel caso del driver mysql è la seguente

Codice: Seleziona tutto

com.mysql.jdbc.Driver
non scendo ulteriormente nel dettagli ma prima di procedere ad ulteriori analisi di problemi prova ad aggiungere questa parte all'inizio del codice che hai postato e vedi se cambia qualcosa

Codice: Seleziona tutto

 try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException ex) {
System.out.println("errore caricamento driver mysql");
}
EDIT: altra cosa che nn vedo è l'indicazione nella url relativa alla porta di ascolto di mysql, ma qui la certezza che se nn indicata il driver java usi quella di default non ce l'ho.
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Avatar utente
dottor3
Linux 1.x
Linux 1.x
Messaggi: 162
Iscritto il: dom 27 lug 2008, 12:59
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: kde 4.5

Re: JAVA-JDBC.....non va e pergiunta senza errori

Messaggio da dottor3 »

Idem con patate al vapore.
Avevo pensato anche io a questo problema e avevo dapprima caricato il driver nel ciclo try/catch ma non avevo notato comunque cambiamenti.
La porta è quella di default, ma anche aggiungendola non capita nulla.

Avatar utente
Toni
Linux 3.x
Linux 3.x
Messaggi: 999
Iscritto il: lun 30 gen 2006, 22:08
Slackware: slackware-14
Kernel: 3.10.5
Desktop: i3
Località: milano

Re: JAVA-JDBC.....non va e pergiunta senza errori

Messaggio da Toni »


Avatar utente
dottor3
Linux 1.x
Linux 1.x
Messaggi: 162
Iscritto il: dom 27 lug 2008, 12:59
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: kde 4.5

Re: JAVA-JDBC.....non va e pergiunta senza errori

Messaggio da dottor3 »

Che io possa essere fulminato se non leggevo la documentazione ufficiale!

Ho trovato l'inghippo maledetto!!!
nel file di configurazione my.cnf l'opzione --skip-networking è disabilitata ma nel file rc.mysqld è dato come parametro all'avvio di mysqld un bel --skip-networking!!!!!!.

3 maledettissimi giorni per scoprire questo maledetto dispetto del divino!!!!

GRAZIE A TUTTI DI CUORE PER L'AIUTO!!!
Questo forum è sempre stato fantastico come la distribuzione che usiamo, e lo sarà sempre!!!!!!

ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Re: JAVA-JDBC.....non va e pergiunta senza errori[RISOLTO]

Messaggio da ilmich »

facendolo per mestiere (il programmatore) ti posso assicurare che sti 3 giorni persi sono 3 giorni risparmiati in futuro ;)
cio' che conta è la determinazione a risolvere i problemi

contento che ora sia funzioni tutto :D
ciaup
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Rispondi