J2EE, JDBC, EJB e MySQL.. o que ta errado?

8 respostas
PadrE

N sei mais o q fazer…

Galera eh o seguinte, to fazendo um projetinho web com acesso ao banco MySQL…

O problema esta na utilizacao do j2ee no meio…

Bom, deixa eu explicar… Fiz um EJBean que acessa o banco MySQL(versao 5) usando o seguinte:

//um trecho do codigo

Código:

String url = jdbc:mysql://localhost:3306/mysql”;

String user = “”;

String psw = root;

try{

Class.forName(org.gjt.mm.mysql.Driver).newInstance();

cn = DriverManager.getConnection(url, user, psw);

depois montei uma servlet q ira acessar esse EJB…

Compilei os dois sem problemas pelo eclipse…

depois iniciei o Servidor PE do j2ee… abri o DeployTool e montei meu .JAR e o . WAR() sem problemas tb…

Então… fui no browser e digite o endereco da servlet (http://localhost:8080/…) e consegui acessar normalmente… mas qndo o Bean é executado, ele me retorna um erro de ClassNotFoundException e me imprime o driver (org.gjt.mm.mysql.Driver) na tela…

Ai eu fui nas variaveis de ambiente ver se o caminho do connector estava correto… e estava !!!

porque nao esta achando o driver ?? estou usando o
"mysql-connector-java-3.1.12.jar", o qual esta indicado no ClassPath e tb no eclipse…

Preciso configurar algo no J2EE ??? Preciso acertar algo no Servidor PE ??

Por favor me deem uma luz ^^

Vlw !

8 Respostas

Ironlynx

Padre, a string de conexão com MySQL é:
com.mysql.jdbc.Driver
e não
org.gjt.mm.mysql.Driver
Essa que vc tah usando é a antiga…e mudou há tempos!

PadrE

Ironlynx,

eu tb tentei usar o “com.mysql.jdbc.Driver” e n deu certo…o erro foi o mesmo…

Por isso acho q falta configurar algo no J2EE para ele reconhecer o Driver… sei la, colocar o .jar em algum diretorio especifico ou alterar algum arquivo de configuracao…

Ou mesmo o Driver nao eh compativel com o MySQL q stou usando, mas em todo site que olho, estao esses dois driver, o que eu postei e o que vc falou…

Vou continuar tentado aki, e se vc tiver alguma outra ideia, ficarei agradecido…

Fui !

J

Olá amigo… vc esta usando o eclipse ???, bom enfim… caso está provavelmete vc esta colocando em seu classpath para pegar a lib do mysql de fora do seu projeto … não esta não? …

de qualquer forma se vc estiver com esse problema ainda é 100% de certeza que sua lib não esta dentro de seu projeto… e está fora dele…

vc precisa colocar ele aqui:

SeuProjeto\WEB-INF\lib\mysql__X_X__.jar

depois… manda no seu classpath procurar por esse jar que esta dentro de seu projeto e não fora.


Abs.

PadrE

javaman00,

vc esta certo… o .jar do mySQL esta fora do projeto… e vc falando isso me fez pensar o seguinte…

Será q eu preciso indicar o .jar na hora de criar o o Bean no DeployTool ??
Porque eu fiz um teste em acessar o banco por uma aplicação desktop e não tive problemas…

Kraca… minha mão ta cosando pra fazer esse teste… mas to no serviço e soh vou chegar em ksa meia noite…

Mas assim que chegar vou correndo testar essa possibilidade… na hora de criar o bean vou indicar o .jar do mysql junto… assim n tem como o Servidor PE n encontrar o Driver…

Talvez colocando o .jar dentro do projeto como vc falou, ele ja aponta pro Driver… mas vamos ver…

Assim que fazer os testes eu posto mais um capitulo dessa luta em fazer com que o EJB acesse o MySQL 5

Fui !

J

é somente isso :wink: é porque ele não acha a classe Driver por estar fora do projeto. Se vc usa uma ide como o Eclipse e vc não tem um jar declarado ele reclama… muito que bem… vc vai la e pega a jar em um diretorio tipo:
c:\arquivos de programas\jee\mysql\lib.jar

o Eclipse na hora para de xiar… o projeto compila sem problemas chega a hora do vamos ver trava porque não acha a classe eu acho isso meio tosco. seria interessante a IDE somente permitir declaração de libs de dentro do projeto… evitando erros meios banais… e em casos extremos com a permissão do programador declarar de fora do projeto.

lembrando que o java não ajuda na solução dos erros em 40% dos casos rs.

e o PHP em 98% de chances de vc resolver o problema pelos erros que o proprio interprtador lhe avisa.

PS: em relação ao PHP só para acutucar o JAVA eheheh

Abraços.

PadrE

Show…

era isso mesmo… foi soh acrescentar o .jar do connector na hora de criar o bean que deu certo… :smiley:

Jah tava na hora… mas agora to com uns erros de login e senha… mas isso creio que de para resolver…

ta aparecendo uma msg de erro sobre um @…

Access denied for user ‘’@‘localhost’ (using password: YES)

devo ter indicado algo errado… bom… o principal que era achar o Driver de conexão ta resolvido… agora o resto ficou moleza… hehe

Vlw javaman00 pela força !!

:wink:

J

firmeza…

seguinte… agora esse erro que vc tem… é 100% de usuário ou senha… va no seu mysql e loga com o usuário e senha… e com esse mesmo usuário e senha vá no seu “.java” e coloca la …

PS: para desencargo de conciência da uma olhadinha tmb na url que coloca o correto é assim:

PadrE

Maravilha…

o NooB aki tava erradno o usuario… mas agora ta tudo certo…
Conexão estabelecida, ResultSet’s retornados e XML’s criados… :stuck_out_tongue:

Agora o projetionho ta andando… to pensando ate em colocar a conexao em uma classe com uns metodos de coenctar, desconectar e retornar ResultSet, soh pra n ficar copiando codigo… hehe

Assim q sobrar um tempo faco isso… pq agora tenho q correr contra o tempo pra terminar esse projeto…

Vlw ae !

Fui !

Criado 3 de abril de 2006
Ultima resposta 5 de abr. de 2006
Respostas 8
Participantes 3