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

problema con initialcontext

Estas en el tema de problema con initialcontext en el foro de Java en Foros del Web. hola a todos, tengo el siguiente problema al querer conseguir una conexion usando jndi, me da el siguiente error: javax.naming.NoInitialContextException: Need to specify class name ...
  #1 (permalink)  
Antiguo 24/03/2010, 12:36
 
Fecha de Ingreso: julio-2009
Mensajes: 14
Antigüedad: 14 años, 9 meses
Puntos: 0
Exclamación problema con initialcontext

hola a todos, tengo el siguiente problema al querer conseguir una conexion usando jndi, me da el siguiente error:

javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(N amingManager.java:645)
at javax.naming.InitialContext.getDefaultInitCtx(Init ialContext.java:288)
at javax.naming.InitialContext.getURLOrDefaultInitCtx (InitialContext.java:325)
at javax.naming.InitialContext.lookup(InitialContext. java:392)
at pruebajndi.conexion.getConnection(conexion.java:37 )
at pruebajndi.conexion.setUsuario(conexion.java:50)
at frame.JFrameJNDI.jButton1MouseClicked(JFrameJNDI.j ava:138)
at frame.JFrameJNDI.access$000(JFrameJNDI.java:21)
at frame.JFrameJNDI$1.mouseClicked(JFrameJNDI.java:52 )
at java.awt.AWTEventMulticaster.mouseClicked(AWTEvent Multicaster.java:253)
at java.awt.Component.processMouseEvent(Component.jav a:6041)
at javax.swing.JComponent.processMouseEvent(JComponen t.java:3265)
at java.awt.Component.processEvent(Component.java:580 3)
at java.awt.Container.processEvent(Container.java:205 8)
at java.awt.Component.dispatchEventImpl(Component.jav a:4410)
at java.awt.Container.dispatchEventImpl(Container.jav a:2116)
at java.awt.Component.dispatchEvent(Component.java:42 40)
at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:3995)
at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:3916)
at java.awt.Container.dispatchEventImpl(Container.jav a:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2429 )
at java.awt.Component.dispatchEvent(Component.java:42 40)
at java.awt.EventQueue.dispatchEvent(EventQueue.java: 599)
at java.awt.EventDispatchThread.pumpOneEventForFilter s(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(E ventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:121)
java.lang.NullPointerException
at pruebajndi.conexion.setUsuario(conexion.java:51)
at frame.JFrameJNDI.jButton1MouseClicked(JFrameJNDI.j ava:138)
at frame.JFrameJNDI.access$000(JFrameJNDI.java:21)
at frame.JFrameJNDI$1.mouseClicked(JFrameJNDI.java:52 )
at java.awt.AWTEventMulticaster.mouseClicked(AWTEvent Multicaster.java:253)
at java.awt.Component.processMouseEvent(Component.jav a:6041)
at javax.swing.JComponent.processMouseEvent(JComponen t.java:3265)
at java.awt.Component.processEvent(Component.java:580 3)
at java.awt.Container.processEvent(Container.java:205 8)
at java.awt.Component.dispatchEventImpl(Component.jav a:4410)
at java.awt.Container.dispatchEventImpl(Container.jav a:2116)
at java.awt.Component.dispatchEvent(Component.java:42 40)
at java.awt.LightweightDispatcher.retargetMouseEvent( Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(C ontainer.java:3995)
at java.awt.LightweightDispatcher.dispatchEvent(Conta iner.java:3916)
at java.awt.Container.dispatchEventImpl(Container.jav a:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2429 )
at java.awt.Component.dispatchEvent(Component.java:42 40)
at java.awt.EventQueue.dispatchEvent(EventQueue.java: 599)
at java.awt.EventDispatchThread.pumpOneEventForFilter s(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(E ventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarch y(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispa tchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThre ad.java:121)


cuando intento obtener la conexión lo hago con el siguiente método:

public Connection getConnection() {
Connection cn=null;
try{

/*Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"com.sun.enterprise.naming.SerialInitContextFactor y");
env.put(Context.PROVIDER_URL,
"localhost:3306/virtual_shop?user=root&password=root");
Context initialContext = new InitialContext(env);
*/

Context ic = new InitialContext();
DataSource ds;
ds = (DataSource) ic.lookup("jdbc/virtualshop");
cn = ds.getConnection();
}
catch(Exception e){e.printStackTrace();}
return cn;
}


donde jdbc/virtualshop es el nombre JNDI, al connectionpool dentro del glassfish le pase todos los parametros: usuario, password, server, puerto y lo tengo bien configurado ya que al hacerle ping no da ningun problema

no se en si cual sera el problema ??
  #2 (permalink)  
Antiguo 25/03/2010, 02:14
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: problema con initialcontext

Leer el mensaje de error, ayuda .
Cita:
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
O sea, ese trozo de código al principio de la clase que tienes comentado donde le pone un valor a Context.INITIAL_CONTEXT_FACTORY... ese trozo hace falta ponerlo sin comentar y con los valores adecuados.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
  #3 (permalink)  
Antiguo 25/03/2010, 11:51
 
Fecha de Ingreso: julio-2009
Mensajes: 14
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: problema con initialcontext

Cita:
Iniciado por GreenEyed Ver Mensaje
Leer el mensaje de error, ayuda .


O sea, ese trozo de código al principio de la clase que tienes comentado donde le pone un valor a Context.INITIAL_CONTEXT_FACTORY... ese trozo hace falta ponerlo sin comentar y con los valores adecuados.

S!
pero si todos los valores ya fueron configurados en el pool de conexion es necesario que se pongan ahi tambien?? y que se pone ahi?? eso comentado lo puse ahi para probar que fue un codigo que encontre por alli pero en realidad no se que valores se ponen en esa parte, gracias por su ayuda!!
  #4 (permalink)  
Antiguo 25/03/2010, 12:57
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: problema con initialcontext

En el pool de conexiones no he visto nunca poner esos valores... no se, pero el que sea necesario ponerlo o no depende del servidor de aplicaciones donde ejecutes el código*. Hay algunos que ya por defecto saben cual es el valor correcto, y otros no.

El valor que hay que poner ahí depende del arbol JNDI al que te quieras conectar y quien lo haya creado, así que no te puedo decir que poner por que no un valor único.

S!

* Veo que seguramente ese código no es de una aplicacion web si no de escritorio, entonces seguro que no lo encuentra por defecto.
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.

Última edición por GreenEyed; 25/03/2010 a las 13:05

Etiquetas: Ninguno
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 03:17.