Olá pessoal , estou com um probleminha…estou tentado fazer minha primeira app com EJB utilizando BD…(mysql…) no eclipse…e estou utilizando o Lomboz…
não estou utilizando entitys´…
Depois que eu criei meu ejb…eu criei uma app EJB Teste Client…uma appzinha standalone…
mas como eu apenas tenho meu jar (de ejbs…) que eu fiz o deploy da aplicação…eu nao tenho um diretorio “/lib” para colocar meu driver do Banco… esta certo né??
entaum eu coloquei meu arquivo “mysql-connector-java-3.0.6-stable-bin” dentro do diretorio “D:Javajboss-3.2.1_tomcat-4.1.24lib”…
e minha fonte JNDI ficou assim :
<datasources>
<local-tx-datasource>
<jndi-name>Biblioteca</jndi-name>
<connection-url>jdbc:mysql://127.0.0.1:3306/Biblioteca</connection-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<user-name>root</user-name>
<password>123321</password>
</local-tx-datasource>
</datasources>
e meu metodo dentro do ejb ficou assim :
public ArrayList getPatologias(){
try{
InitialContext ctx = new InitialContext();
DataSource ds = (DataSource)ctx.lookup("java:/Biblioteca");
Connection con = ds.getConnection();
Statement stPATOLOGIA = con.createStatement();
String SQL="select * from patologia;";
ResultSet rs = stPATOLOGIA.executeQuery(SQL);
if(rs!=null){
ArrayList arrayOfPats = new ArrayList();
while(rs.next()){
arrayOfPats.add(new String(rs.getString(2)));
}
return(arrayOfPats);
}else {
aerror = new ArrayList();
aerror.add(new String("ResultSet Null"));
return(aerror);
}
}catch(NamingException ne){
aerror = new ArrayList();
aerror.add(new String("Namming Exception" + ne.toString()));
return(aerror);
}catch(Exception e){
aerror = new ArrayList();
aerror.add(new String("Exception :" + e.toString()));
return(aerror);
}
}
e na minha ap CLIENT assim :
try {
ejbs.beans.Paciente myBean = getHome().create();
ArrayList al = new ArrayList();
al = myBean.getPatologias();
Iterator i = al.iterator();
while(i.hasNext()){
String st = (String)i.next();
System.out.println("Nome da patologia :" + st);
}
System.out.println("Fim dos resultados");
} catch (RemoteException e) {
e.printStackTrace();
} catch (CreateException e) {
e.printStackTrace();
} catch (NamingException e) {
e.printStackTrace();
}
A app roda…e me retorna essa exceção…dentro do array…:
[org.jboss.util.NestedSQLException: Failed to register driver for: com.mysql.jdbc.Driver; - nested throwable: (java.lang.ClassNotFoundException: com.mysql.jdbc.Driver); - nested throwable: (org.jboss.resource.JBossResourceException: Failed to register driver for: com.mysql.jdbc.Driver; - nested throwable: (java.lang.ClassNotFoundException: com.mysql.jdbc.Driver))]
Fim dos resultados
Pelo que eu pide perceber , parece que ele nao achou o driver né??
mas se eu coloquei ele dentro do diretorio lib do jboss nao deveria funcionar??
não to conseguindo arrumar, o que pode ser ??
qual a minha cagada?heh :oops:
valeu!