PDA

Visualizza la versione completa : [JAVA/JSP] Errore connessione MySQL


newtel
28-12-2005, 12:12
ciao a tutti e...buone feste!!

ho un piccolo problemino nel connettermi a mysql
per farla breve ho letto un po' di documentazione e

1) ho scaricato i connector/J dal sito
http://dev.mysql.com/downloads/connector/j
2) ho preso
mysql-connectorjava-3.0.14-production-bin.jar
e messo sotto
C:\resin\webapps\prova\WEB-INF\lib

3) mi sono creato la mia paginetta di prova dove


<%@ page import="java.sql.*,
java.io.*"%> ...
...
//carico un' istanza del driver

Class.forName("com.mysql.jdbc.Driver"); //la connessione

conn=DriverManager.getConnection("jdbc://127.0.0.1/test?user=root&password=prova");

qry = "SELECT * from prova ";
stmt = conn.prepareStatement(qry);
rs = stmt.executeQuery();

while (rs.next()) {
out.println("funzegha???"); //noooooo!!!!
}

quando lancio prova.jsp mi da una serie di errori



Note: sun.tools.javac.Main has been deprecated.
C:\resin\webapps\prova\WEB-INF\classes\com\mysql\jdbc\integration\c3p0\MysqlC onnectionTester.java:30:
Class com.mchange.v2.c3p0.C3P0ProxyConnection not found in import.
import com.mchange.v2.c3p0.C3P0ProxyConnection;
^
C:\resin\webapps\prova\WEB-INF\classes\com\mysql\jdbc\integration\c3p0\MysqlC onnectionTester.java:31:
Class com.mchange.v2.c3p0.QueryConnectionTester not found in import.
import com.mchange.v2.c3p0.QueryConnectionTester;
^
C:\resin\webapps\prova\WEB-INF\classes\com\mysql\jdbc\integration\c3p0\MysqlC onnectionTester.java:43:
Interface com.mchange.v2.c3p0.QueryConnectionTester of class com.mysql.jdbc.integration.c3p0.MysqlConnectionTes ter
not found.
public final class MysqlConnectionTester implements QueryConnectionTester
{

...sicuramente sar una stupidata ma...sono un po' nel
pallone!! :messner:

dardo
28-12-2005, 12:36
ciao
la libreria di mysql dovresti posizionarla in:
Apache Software Foundation\Tomcat 5.0\common\lib

inoltre dovresti dirgli nella stringa di connessione la porta che 3306 di default
ciao

newtel
28-12-2005, 12:51
...intanto grazie...

Come web-server uso RESIN e da quanto ho letto i .jar posso metterli direttamente nella lib della mia applicazione (PROVA).

per quanto riguarda la porta ho aggiunto :3606


conn=DriverManager.getConnection("jdbc://127.0.0.1:3606/test?user=root&password=prova");

ma niente da fare...l'errore identico!!.. :bh: .

Andrea1979
28-12-2005, 13:00
Sei sicuro della stringa di connessione? Da me, qualcosa del genere:



Class.forName("com.mysql.jdbc.Driver").newInstance();

conn = DriverManager.getConnection("jdbc:mysql://" + db_host +
"/" + db_name + "?user=" + db_user + "&password=" + db_password);


Ossia mi pare che manchi la parte di protocollo che specifica mysql nella tua... non so, magari sto dicendo corbellerie (probabile, il calo degli zuccheri si fa importante a quest'ora)

Sandrocchio_0.1
28-12-2005, 13:02
credo che la libreria che hai scaricato non sia quella giusta, prova con questa (http://xsandrox.altervista.org/stage/mysql-connector.jar), io uso Tomcat e di solito la metto nella lib della mia applicazione, ma se il connector dovrai usarlo per tutte le altre puoi anche lasciarlo nella cartella che diceva dardo, in questo modo sar condivisa da tutte le webapps.

La porta di default per i DB 3306, e a meno che tu non abbia esplicitamente chiesto di cambiarla durante l'installazione devi lasciare 3306.

newtel
28-12-2005, 13:18
...il link per la lib un po' vagoooo...me lo riposti please!!...

per quanto riguarda


conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3606/test?user=root&password=prova");

ho provato ad aggiungere :mysql ma...niente!!...
...che fastidio...ho una montagna di lavoro da fare ma se non riesco a collegarmi al db dura...

Andrea1979
28-12-2005, 13:49
Comunque, rileggendo bene il log dell'errore proprio che non trova la libreria... poi magari, sistemato quello ci sarebbe stato da sistermare anche il parametro di connessione... ma al momento bisognerebbe sistermare l'altro discorso

Sandrocchio_0.1
28-12-2005, 13:58
http://xsandrox.altervista.org/stage/mysql-connector.jar

newtel
28-12-2005, 14:53
FATTO!!!...avevo lasciato un package com.mysql...etc in classes!!...
grazie a tutti!!!

ricapitolando

Con RESIN come web-server

1) ho scaricato i connector/J dal sito
http://dev.mysql.com/downloads/connector/j
2) ho preso
mysql-connectorjava-3.0.14-production-bin.jar
e messo sotto
...webapps\prova\WEB-INF\lib

pagina di prova



<%
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
String qry = "";

try {
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1/test?user=root&password=prova");
qry = "SELECT * from prova ";
stmt = conn.prepareStatement(qry);
rs = stmt.executeQuery();
while (rs.next()) {
out.println("funzegha!!!");
}
} finally {
if (rs != null) rs.close();
if (stmt != null) stmt.close();
if (conn != null) conn.close();
}

%>



...ciao ragazzi alla prossima!!!

:yuppi:

Loading