eae galera, blz…
Sou novo com java e estou acompanhando a apostila da Caelum fj21 mas estou tendo problemas para realizar conexao com banco de dados firebird em um projeto web. Em um execicio anterior em que o projeto nao era web realizei a conexao e efetuei transacoes de insercao, consulta, etc no banco de dados normalmente.
Agora no projeto web nos exercicios do item 5.9 nao funciona.
Os exercicios pedem:
1 - importar algumas classes para conexao e transacao com banco de dados.
essas classes para importar sao as do outro projeto que ja funciona mas nao é um projeto web. OK
2 - criar uma pagina html para cadastrar os contatos.
criada a pagina adiciona-contato.html conforme apostila. OK
3 - criar uma servlet para gravar o contato no banco de dados e mapear a servlet no arquivo web.xml.
criada a servlet AdicionaContatoServlet.java e mapeada no arquivo web.xml conforme apostila. OK
Obs: coloquei o arquivo do driver do firebird (“jaybird-full-2.1.6.jar”) na pasta web-inf/lib/ e adicionei no projeto o driver atraves do build path do eclipse e tambem adicionei no class path o endereco do driver web-inf/lib/.
Esta é minha classe que cria a instancia da conexao
public class ConnectionFactory {
public Connection getConnection() throws ClassNotFoundException{
try {
Class.forName(“org.firebirdsql.jdbc.FBDriver”);
String url = “jdbc:firebirdsql:localhost/3050:C:/database/banco.fdb”;
Connection conn = DriverManager.getConnection(url, “SYSDBA”, “masterkey”);
return conn;
} catch (SQLException e) {
throw new RuntimeException();
}
}
}
ela é chamada no constructor desta classe
public class ContatoDao {
private Connection conexao;
public ContatoDao() {
try {
this.conexao = new ConnectionFactory().getConnection();
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}
}
.
.
.
e na servlet eu crio o objeto da classe “ContatoDao”
Na pagina html e ao clicar no botao de gravar vem o seguinte erro:
java.lang.RuntimeException: java.lang.ClassNotFoundException: org.firebirdsql.jdbc.FBDriver
pckServlet.ContatoDao.(ContatoDao.java:18)
pckServlet.AdicionaContatoServlet.service(AdicionaContatoServlet.java:50)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause
java.lang.ClassNotFoundException: org.firebirdsql.jdbc.FBDriver
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Unknown Source)
pckServlet.ConnectionFactory.getConnection(ConnectionFactory.java:9)
pckServlet.ContatoDao.(ContatoDao.java:16)
pckServlet.AdicionaContatoServlet.service(AdicionaContatoServlet.java:50)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.33 logs.
Alguem sabe oque poderia estar errado???
obrigado.