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

como acceso al contexto desde una clase

Estas en el tema de como acceso al contexto desde una clase en el foro de Java en Foros del Web. Un saludo especial desde COLOMBIA tengo un problema amigos... estoy tratando de implementar un POOL de conexiones con servlets y clases java. mi POOL lo ...
  #1 (permalink)  
Antiguo 07/10/2004, 15:12
 
Fecha de Ingreso: septiembre-2003
Mensajes: 47
Antigüedad: 20 años, 7 meses
Puntos: 0
como acceso al contexto desde una clase

Un saludo especial desde COLOMBIA

tengo un problema amigos...

estoy tratando de implementar un POOL de conexiones con servlets y clases java.

mi POOL lo pongo en el contexto de mi tomcat para acceder a él desde mi aplicación con el getServletContext...

cuando arranco mi tomcat, inicia el POOL sin problemas.

pero cuando intento acceder al contexto desde un servlet para cargar el pool en una variable me saca el error NULLPOINTEREXCEPTION.
alguien sabe porque sucede este problema???

otra duda... se supone que al contexto de mi contenedor de servlets solo puedo acceder a traves de getServletContext, y este método solo se puede cargar desde JSP o desde un SERVLET...

que debo hacer para cargar mi POOL desde una clase normal "NO SERVLET"?

espero que me entiendan mi problema y me ayuden con ideas y sugerencias.
  #2 (permalink)  
Antiguo 07/10/2004, 15:44
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
Hola milsoncardona, puedes mostrar el código como obtienes la referencia al pool ?

Ahora, yo desde una clase, servlet, jsp, ejb, etc, puedo obtener una conexión del pool a través de JNDI
__________________
Saludos,

H@C..
  #3 (permalink)  
Antiguo 07/10/2004, 15:54
 
Fecha de Ingreso: septiembre-2003
Mensajes: 47
Antigüedad: 20 años, 7 meses
Puntos: 0
gracias por el interes amigo Hugo

//en este servlet intento acceder al contexto para recuperar el pool y luego obtener la conexion

public class DAOUtil extends HttpServlet {
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
public Connection getConexion(){
Connection conexion = null;
try{
ConnectionPool pool = (ConnectionPool) getServletContext().getAttribute("CONNECTION_POOL" );
if (pool == null){
throw new UnavailableException("no pudo capturar la conexion ");
}
conexion = pool.getConnection();
}catch(Exception e){
throw e;
}finally{
return conexion;
}
}
}

--------------------------------------------------------------------------
//asi creo el POOL DE CONEXIONES y lo subo al contexto

public class ConnectionPoolServlet extends HttpServlet {

//Initialize global variables
public void init(ServletConfig config) throws ServletException {
super.init(config);
ConnectionPool pool = new ConnectionPool();
try {
pool.setDriver("oracle.jdbc.driver.OracleDriver");
pool.setURL("jdbc:oracle:thin:@xxxxx");
pool.setSize(4);
pool.setUsername("nnnn");
pool.setPassword("nnnnn");

// Initialize the pool
pool.initializePool();

ServletContext context = getServletContext();
context.setAttribute("CONNECTION_POOL", pool);
}catch (Exception e) {
System.err.println(e.getMessage());
}
}

}

--------------------------------------------------------------------------

espero que me puedas ayudar con este problema..
  #4 (permalink)  
Antiguo 07/10/2004, 16:05
Avatar de ko^ke  
Fecha de Ingreso: septiembre-2001
Ubicación: México D.F.
Mensajes: 364
Antigüedad: 22 años, 7 meses
Puntos: 1
puedes mirar este post

http://www.forosdelweb.com/f45/jsp-tomcat-obtener-contextpah-229956/
__________________
Aquí va la firma...
  #5 (permalink)  
Antiguo 07/10/2004, 17:28
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
milsoncardona, me parece que el contexto que estas usando no es el correcto. Los pool de conexiones, si bien pueden configurarse por código, generalmente se hace por archivos de configuración del servidor (en el caso del tomcat, en el server.xml ) y luego mediante JNDI acceder al contexto "JNDI" para obtener la referencia a ellos.

Un ejemplo lo puedes encontrar en:
http://jakarta.apache.org/tomcat/tom...les-howto.html
__________________
Saludos,

H@C..
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 01:18.