Connexion SQL impossible depuis servlet

Résolu
casta48 Messages postés 13 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 9 mars 2011 - 1 mars 2011 à 10:09
casta48 Messages postés 13 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 9 mars 2011 - 9 mars 2011 à 21:53
Bonjour,

sous ubuntu 10.10, j'execute un servlet sur une machine ayant aussi une database/serveur MySQL.
Malheuresement, j'obtiens le message d'erreur suivant a la connexion:
[b]com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:
Could not create connection to database server./b
...
[b]Caused by: java.security.AccessControlException: access denied
(java.net.SocketPermission localhost resolve)/b
[...]

j'utilise un connecteur jdbc java mysql-connector-java-5.1.15-bin.jar depuis un serveur tomcat (ce jar est dans mon répertoire lib)

le code utilisé est le suivant:
Connection conn = null;

// figure out what server this application is being
hosted on
String url = "jdbc:mysql://localhost:3306/PMDB";
//String db = "PMDB";
String driver = "com.mysql.jdbc.Driver";
String user = "casta";
String pass = "monpassword";

System.out.println("connection SQL url: " + url);

try {
Class.forName(driver).newInstance();
System.out.println("DEBUG MySQL JDBC driver
loaded ok.");
conn =
DriverManager.getConnection(url,user,pass);
System.out.println("DEBUG MySQLConnected with
"+url);
} catch (Exception e) {
// error
System.err.println("DEBUG Mysql Connection
Error: ");

// for debugging error
e.printStackTrace();
}

if (conn == null) {
System.out.println("DEBUG ~~~~~~~~~~ can't get
a Mysql connection");
}

j'arrive bien a me connecter a sql via la commande :
$>mysql -h localhost -P 3306 -u casta -p PMDB
sachant que j'ai configuré mysql avec mon my.cf autaurisant toutes les
adresses ip.
J'ai aussi activé les logs coté server mysqld=> il ne reçoit jamais la
requête de connexion. donc le problème semble se produire avant même
la connexion a mysld....

De plus si j'utilise le même bout de code depuis un simple projet java, la connexion s'établit bien...


ça fait une semaine que je suis sur le problème... et je seche
vraiment !!!!
HELP !!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
merci de votre soutien

2 réponses

casta48 Messages postés 13 Date d'inscription lundi 29 juillet 2002 Statut Membre Dernière intervention 9 mars 2011
9 mars 2011 à 21:53
j'ai résolu mon probleme en decochant la case
"use google app engine"
dans les propretes de mon projet => google => app engine

:)
3
estabrahim Messages postés 3 Date d'inscription samedi 16 octobre 2010 Statut Membre Dernière intervention 24 mai 2011
5 mars 2011 à 16:59
slm/com
Brahim akhtar EST-Agadir Maroc
je veut manipuler une base de donnée MysQl, et je doit utiliser les servlets mais malheureusement ça marche pas et je vous demandez de me donné des aides pour résoudre ce probléme et merçi d'avance
Voila mon code-source:



package Authentification;


import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class Authentification extends HttpServlet
{
/**
*
*/
private static final long serialVersionUID = 1L;
private Connection con;
private PrintWriter out;

public void init(ServletConfig conf) throws ServletException
{
super.init(conf);
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
con =DriverManager.getConnection ("jdbc:mysql://localhost:3306/utilisateurs", "root", "");
System.out.println("Connection OK");
}
catch(Exception e)
{
System.out.println(e);
}
}

public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
res.setContentType("text/html");
try
{
out = res.getWriter();
out.println("<html><head><title>");
out.println("JDBC Servlet");
out.println("</title></head>");

Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM users;");
out.println("");

while(rs.next())
{
out.println("<LI>" + rs.getString("Login"));
}
out.println("");
rs.close();
stmt.close();
}
catch(SQLException e)
{
out.println("Exception SQL");
}
catch(IOException e)
{
}

out.println("</html>");
out.close();
}

public void destroy()
{
try
{
con.close();
}
catch(SQLException e)
{
}
}
}


fin prog.
0
Rejoignez-nous