Connexion SQL impossible depuis servlet [Résolu]

Messages postés
13
Date d'inscription
lundi 29 juillet 2002
Dernière intervention
9 mars 2011
- - Dernière réponse : casta48
Messages postés
13
Date d'inscription
lundi 29 juillet 2002
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
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Messages postés
13
Date d'inscription
lundi 29 juillet 2002
Dernière intervention
9 mars 2011
3
Merci
j'ai résolu mon probleme en decochant la case
"use google app engine"
dans les propretes de mon projet => google => app engine

:)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 105 internautes nous ont dit merci ce mois-ci

Commenter la réponse de casta48
Messages postés
3
Date d'inscription
samedi 16 octobre 2010
Dernière intervention
24 mai 2011
0
Merci
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.
Commenter la réponse de estabrahim

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.