Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/10/2009, 04:46
Avatar de Antropodo
Antropodo
 
Fecha de Ingreso: octubre-2009
Mensajes: 4
Antigüedad: 14 años, 7 meses
Puntos: 0
No puedo conectar puente JDBC:ODBC desde un servlet

Hola compañeros, posteo el siguiente codigo para ver si me pueden hechar un cable en algo que me esta cortocircuitando las neuronas y no veo por donde pillarlo...
estoy escribiendo un servlet para conectarme a una base de datos que tengo creada en local en access, pero a la hora de lanzar la excepción generada por el método getConnection (SQLException) me sale error de que no se encuentra de que la url no es correcta..(JDBC:ODBC:J2SeeJDBC)

Pero lo curioso de todo esto es que he probado desde eclipse con un applet apuntando a la misma url (JDBC:ODBC:J2SeeJDBC) y se conecta perfecto.

Es como si al compilarlo con el J2SDK no reconociera el mismo formato de la url desde el servlet que con el applet.

Alguna idea antes de probar con mysql o oracle??


----El código del servlet es el siguiente-------------------------------------------------

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;

public class ServletJdbc extends HttpServlet {

Connection conexion = null;

public void init(ServletConfig conf)
throws ServletException {
super.init(conf);
}

public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {

res.setContentType("text/html");
PrintWriter out = res.getWriter();

try {
//Leemos el driver
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

//Nos conectamos a la BD local
conexion = DriverManager.getConnection("jdbc:odbc:J2eeJDBC"," ","");


//Decimos que nos hemos conectado
out.println("<html>");
out.println("<body>");
out.println("<h1>¡Hemos conectado!</h1>");
out.println("</body>");
out.println("</html>");

}
catch (ClassNotFoundException e1) {
//Error si no puedo leer el driver de Oracle
out.println("ERROR:No encuentro el driver de la BD: "+
e1.getMessage());
}
catch (SQLException e2) {
//Error SQL: login/passwd mal
out.println("ERROR:Fallo en SQL: "+e2.getMessage());
}
finally {
//Finalmente desconecto de la BD
try {
if (conexion!=null)
conexion.close();
} catch (SQLException e3) {
out.println("ERROR:Fallo al desconectar de la BD: "+
e3.getMessage());
}

}

}

public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
doGet(req, res);
}
}
-------------------------------------------------------------------------------

la base de datos se encuentra en "C:/users/simour/mydocuments/musica.mdb"

y el ODBC se llama "J2eeJDBC".


Gracias!!