Foros del Web » Programación para mayores de 30 ;) » Java »

Excepcion al cargar driver Jdbc-Odbc

Estas en el tema de Excepcion al cargar driver Jdbc-Odbc en el foro de Java en Foros del Web. Que tal. Estoy incursionando en el tema de acceso a BD utilizando Java. Estoy trabajando en NetBeans 3.6 y a partir de otros temas en ...
  #1 (permalink)  
Antiguo 05/01/2006, 09:47
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Excepcion al cargar driver Jdbc-Odbc

Que tal. Estoy incursionando en el tema de acceso a BD utilizando Java. Estoy trabajando en NetBeans 3.6 y a partir de otros temas en la seccion desarrolle una Applet para tener acceso a una BD mediante jdbc-odbc.

Mi problema es que me manda la siguiente excepcion:

accessdenied (java.lang.RuntimePermission accessClassInPackage.sun.jdbc.odbc)

Espero alguien me pueda ayudar...
  #2 (permalink)  
Antiguo 05/01/2006, 10:30
Avatar de Itchy  
Fecha de Ingreso: diciembre-2005
Mensajes: 18
Antigüedad: 18 años, 5 meses
Puntos: 0
Al Aparecer Es Por El Driver De La Bd. Para Ayudarte Indica La Version Del Driver Y La Bd A La Que Te Conectas
  #3 (permalink)  
Antiguo 05/01/2006, 11:01
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Estoy utilizando el sdk 1.4.2_06 y de ahi obtuve el archivo rt.jar para el driver. Para la BD utilizo un ODBC hacia una BD en Access...
  #4 (permalink)  
Antiguo 05/01/2006, 11:20
Avatar de dogduck  
Fecha de Ingreso: enero-2006
Ubicación: ¿Atlantida, Hesperides, Islas afortunadas?
Mensajes: 2.231
Antigüedad: 18 años, 4 meses
Puntos: 19
Busqueda re:

accessdenied ¿?

Puede ser por :
* Usuario y/o pass incorrectos al efectuar la conexión a la BBDD
...
Connection con;
String url = "jdbc:mysql://servidor:3306/basedatos"
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection(url, "usuario", "clave");
...

* O por el tema de como se gestiona la seguridad con los Applet .
Si la conexión a la bbdd está en el mismo servidor ( contenedor) del Applet
Creo que deberia funcionar ...¿ Podria funcionar un applet alojado en un servidor que intente conectar a una bbdd alojada en otro servidor ?

Esperemos que los expertos nos iluminen ...

* En el caso de que te falle el driver , si usas uno ODBC , testea 1º la conexión :

Windows :Panel de control > Herramientas admvas > ODBC > ...

Y ya sabes que los pasos son:

//1.- REGISTRAR DRIVER
try {
Driver d = (Driver)Class.forName("sun.jdbc.odbc.JdbcOdbcDrive r").newInstance();
} catch (Exception e) {
System.out.println(e);
}
// 2.- GET CONNECTION
Connection con = null;
try
{
//depura("Recuperamos conexión");
con = DriverManager.getConnection("jdbc:odbc:basedatos", "usuario","clave");
}
catch(Exception e)
{
System.out.println(e);
}

Suerte ...

http://club.idecnet.com/~ccastano/fe...105/281105.htm
  #5 (permalink)  
Antiguo 05/01/2006, 12:29
Avatar de Itchy  
Fecha de Ingreso: diciembre-2005
Mensajes: 18
Antigüedad: 18 años, 5 meses
Puntos: 0
En Windows INICIO -> EJECUTAR -> aqui tipea lo siguiente: odbcad32 -> ACEPTAR
Se abre una ventana selecciona DNS de Usuario para Ms Access Database -> AGREGAR se abre otra ventana selecciona el Driver para MICROSOFT ACCESS despues de esto viene la
Configuracion de ODBC de Microsoft Access selecciona la ruta de la bd y en avanzadas ingresa el usuario y password los mismos que iran en la linea "DriverManager.getConnection(....,....)" de tu clase en donde invocas a la BD
  #6 (permalink)  
Antiguo 05/01/2006, 12:43
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Le agradezco a ambos las soluciones que me estan proponiendo, pero el problema se presenta cuando la applet intenta cargar el driver, ya que el ODBC funciona bien, de hecho ya lo ligue con excel para realizar una transferencia de datos y no presenta ningun problema, lo datos llegan bien.

En la applet tengo un Button que es el que hace todo el proceso de conexion y realizacion de una consulta sencilla, pero ni siquiera llega a la instruccion de carga de la base de datos ya que el driver no lo carga bien...
  #7 (permalink)  
Antiguo 05/01/2006, 13:15
Avatar de dogduck  
Fecha de Ingreso: enero-2006
Ubicación: ¿Atlantida, Hesperides, Islas afortunadas?
Mensajes: 2.231
Antigüedad: 18 años, 4 meses
Puntos: 19
re:

Me suena a seguridad de los applet ....
¿ Has probado a ejecutar el applet y la bbdd en un mismo servidor ? es decir
que la base de datos de access corra en el mismo servidor que te sirve la página web con el applet.



de todas formas si se te para al cargar el driver , no al realizar la conexión , es que te está fallado algo en:

//Cargar el Driver
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }
catch(Exception e){
System.out.println("No se ha podido cargar el Driver JDBC-ODBC");
System.out.println(e.getMessage());
}

????

Mirate http://www.gamarod.com.ar/articulos/...a_y_access.asp

Última edición por dogduck; 05/01/2006 a las 13:21
  #8 (permalink)  
Antiguo 05/01/2006, 14:10
 
Fecha de Ingreso: junio-2005
Mensajes: 286
Antigüedad: 18 años, 10 meses
Puntos: 2
me parece que es por seguridad...el Applet corre en un "sandbox" [caja de arena] que se supone inofensivo para el cliente, quizas hacer conneciones por el puente ODBC/JDBC no es permitido
  #9 (permalink)  
Antiguo 05/01/2006, 16:01
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Encontre una solucion al problema retomando lo que dice Willie. En lugar de utilizar un Applet, genere un Frame que utilizace el mismo código y la conexion se lleva a cabo...

Muchas Gracias tanto a itchy y dogduck por su interes ya que tambien lo que me mencionaron me dio ideas que me ayudaron a aprender otras cosas...

Que de aqui surgiria otra pregunta, como modifico las características del sandbox para que permita la carga del driver...
  #10 (permalink)  
Antiguo 05/01/2006, 16:57
 
Fecha de Ingreso: noviembre-2003
Mensajes: 9
Antigüedad: 20 años, 5 meses
Puntos: 0
El problema del applet podria solucionarse quiza creando un applet firmado.

Saludos
  #11 (permalink)  
Antiguo 06/01/2006, 03:43
Avatar de dogduck  
Fecha de Ingreso: enero-2006
Ubicación: ¿Atlantida, Hesperides, Islas afortunadas?
Mensajes: 2.231
Antigüedad: 18 años, 4 meses
Puntos: 19
re:

¿ Como se firma un Applet ? .
La verdad es que seria interesante , ya que por lo poco que he visto de java ,
en un applet cada vez que interviene tratamiento de sockets, como se da en las conexiones a bbdd, y/o ficheros , suele haber restricciones ( cosa que por otro lado es lógico , ya que si no con solo publicar un applet malintencionado en la web podrias crear un problema de seguridad ).


----- 2 horas más tarde ----

Como se firma un applet , al menos para el IE de Microsoft :

http://www.iec.csic.es/criptonomicon/java/ie.html
:

Última edición por dogduck; 06/01/2006 a las 06:05
  #12 (permalink)  
Antiguo 06/01/2006, 10:59
Avatar de Mephisto  
Fecha de Ingreso: enero-2006
Ubicación: Mexico DF
Mensajes: 184
Antigüedad: 18 años, 4 meses
Puntos: 3
Muchas gracias por la informacion, me ha sido muy util...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:47.