Erro de conexÃo com mysql no windows xp

Pessoal,

Desenvolvi uma aplicação applet, aqual roda perfeitamente no Windows 98.
Mas, no Windows xp, não consigo me conectar ao servidor.

A configuração é a seguinte:

? MySQL 3.2
? J2sdk1.4.1_03
? (Admin. de fonte de dados / Drivers):
 MySQL 2.50.39.00 MySQL AB
 MySQL ODBC 3.51 Driver MySQL AB

? O meu %CLASSPATH% está corretamente configurado:

C:\j2sdk1.4.1_03\bin;c:\mysql\mysql-connector-java-3.0.8-stable\mysql-connector-java-3.0.8-stable-bin.jar;c:\mysql\mysql.jar

? Dentro da pasta c:\mysql, está localizado cortamente o arquivo mysql-conector Java, como indicado na Classpath.

Agora, não sei porque diabos toda vez em que o usuário digita a senha e ID, sempre dá este erro:

Error
java.sql.SQLException: Unable to connect to any hosts due to exception: java.security.AccessControlException: access denied (java.util.PropertyPermission file.encoding read)
Error
java.sql.SQLException: Unable to connect to any hosts due to exception: java.security.AccessControlException: access denied (java.util.PropertyPermission file.encoding read)
java.security.AccessControlException: access denied (java.lang.RuntimePermission
exitVM)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:270)
at java.security.AccessController.checkPermission(AccessController.java:401)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:542)
at java.lang.SecurityManager.checkExit(SecurityManager.java:762)
at java.lang.Runtime.exit(Runtime.java:88)
at java.lang.System.exit(System.java:713)
at MyApplet.init(MyApplet.java:56)
at sun.applet.AppletPanel.run(AppletPanel.java:348)
at java.lang.Thread.run(Thread.java:536)

Já estou quase cortando os pulsos.
Tem alguém que pode me ajudar neste dilema?

Obs.: Tenho nesta máquina o MySQLFRONT o qual funciona belezinha…

Muito obrigado.

veja o seguinte codigo, nas strings serverName, username e password estou recuperando os dados atraves de um arquivo de configuracao. Mas vc pode atribuir valores como os que estao nos comentarios. Esses seriam localhost, root e daf respectivamente.

try { 
// Carregando o JDBC Driver 
String driverName = "com.mysql.jdbc.Driver"; 
Class.forName(driverName); 

// Criando a conexão com o Banco de Dados 
//String serverName = "salademedicamen"; 
String serverName = maquina;//"localhost"; 
String mydatabase = "Processo"; 
String url = "jdbc:mysql://" + serverName + ":3306/" + mydatabase; 
String username = usuario;//"root"; 
String password = senha;//"daf"; 

connection = DriverManager.getConnection(url, username, password); 
stmPrincipal = connection.createStatement(); 
} // fim do try 

catch (ClassNotFoundException e) { 
//Driver não encontrado 
JOptionPane.showMessageDialog(this,"O driver do banco não foi encontrado !\n" + 
e.getMessage()); 
System.out.println("O driver expecificado não foi encontrado."); 
} catch (SQLException e) { 
//Não está conseguindo se conectar ao banco 
JOptionPane.showMessageDialog(this,"Não foi possível conectar ao banco !\n" + 
e.getMessage()); 
System.out.println("Não foi possível conectar ao Banco de Dados"); 
} catch (Exception e) { 
//Não está conseguindo se conectar ao banco 
JOptionPane.showMessageDialog(this,"Ocorreu um problema !\n" + 
e.getMessage()); 
System.out.println(e.getMessage()); 
} 

Qto ao drive faça o seguinte :

@echo off
c:\jdk1.5.0_02\bin\java.exe -classpath “C:\jdk1.5.0_02\jre\lib\rt.jar;C:\Wallace\Documentos\Java\Processo\classes” PrincipalFrame

Sempre executo assim meus programas. A classe PrincipalFrame como o nome diz é a principal. Ponha o comando acima num arquivo .bat e execute-o. Va no fonte do drive e copie a pasta chamada “com” pra dentro do diretorio classes. Estou executando o aruivo .bat do diretorio Processo. E as classes compiladas estao no diretorio classes.

Espero que ajude.

Wallace

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos para ficarem mais legíveis - Reifel[/color][/size] :joia:

Wallace,

Muito obrigado, vou testar e já te retorno.
Mesmo ainda sem saber do resultado, ainda me parece extranho que exista alguma diferênçã (na passagem de parâmetros na conexão no windos98 e XP)

Valeu!

Wallace,

Este é o meu bloco de código, acredito que no fundo é como o teu, pode ser alguma cnfiguração do MySQL?
.Qual é a tua versão do MySQL?
.Quando é carregado na memória, quais são os drivers de MyODBC que aparecem detro do Environmet?
.Quais são as vesões de teus drivers?

Obrigado pela aujuda.

private boolean validateUser(String usr, String pwd){
try
{

		Class.forName("org.gjt.mm.mysql.Driver");
		String serverName = "localhost:3306";
		String myDataBase = "banco";
		String url = "jdbc:mysql://"+serverName+"/"+myDataBase;
		
		Connection con = DriverManager.getConnection(url,usr,pwd);
		Statement stmt = con.createStatement();
   		
		return true;	
	}
	catch (ClassNotFoundException e){
		System.out.println ("O driver expecificado não foi encontrado.");
		e.printStackTrace();
		return false;
	}
 	
	catch(SQLException e){    
	    JOptionPane.showMessageDialog(null,"ACESSO NEGADO!!!","ERRO:",0);
	    System.out.println("Error");
	    System.out.println(e);
		
		return false;
	}
	 
}

Opa,

cara com localhost na máquina do cliente usando apples não funciona nem um pouquinho :lol:

ao invés de localhost, coloque o ip ou o host do servidor, porque utilizando localhost ele vai tentar achar o banco na máquina na qual está executando a aplicação.

:okok:

E ai, ja conseguiu resolver.
Tambem ja tive problemas com o drive, consegui da maneira q descrevi acima. Realmente o codigo parece o mesmo, mas a forma como o drive é carregado é diferente. Copiei a pasta “com” para dentro da pasta indicada no meu classpath. Esta pasta “com” esta nos fontes do drive q vem em um arquivo .jar .
Depois teste somente a conexão pra ver se gera alguma excessao, veja como utilizei o meu classapth no exemplo q dei inicialmente. Coloquei os caminhos no arquivo .bat q executa o sistema.

String driverName = “com.mysql.jdbc.Driver”;
Class.forName(driverName);

Wallace