Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/08/2010, 12:44
fersm
 
Fecha de Ingreso: agosto-2010
Mensajes: 7
Antigüedad: 13 años, 8 meses
Puntos: 0
DataSource con java EE6, netbeans 6.8 y glassfish v3

Bueno, comento el problema que tengo:
Estoy intentando accesar al pool de conexiones que se genera en el glassfish desde una clase en java pero no puedo, ya verifique que desde el glassfish si se realice la conexion. Esta en un proyecto Java Web.
Coloco el codigo de la clase para que vean que esta correcto


Código C++:
Ver original
  1. package conexion;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.ResultSet;
  5. import java.sql.Statement;
  6. import javax.sql.DataSource;
  7. import javax.naming.Context;
  8. import javax.naming.InitialContext;
  9. import javax.naming.NamingException;
  10.  
  11. public class conexion
  12. {
  13.     public String datos()
  14.     {
  15.         try
  16.         {
  17.             DataSource ds = getConexion();
  18.             Connection con = ds.getConnection();
  19.             Statement st = con.createStatement();
  20.             String nombres = "";
  21.             ResultSet rs = st.executeQuery("select * from usuarios");
  22.             while (rs.next())
  23.             {
  24.                 nombres += rs.getString(1) + " " + rs.getString(2) + ",";
  25.             }
  26.             System.out.println(nombres);
  27.             return nombres;
  28.         }
  29.         catch(Exception e)
  30.         {
  31.             System.out.println(e);
  32.         }
  33.         return "no funciono";
  34.     }
  35.  
  36.  
  37.     private DataSource getConexion() throws NamingException {
  38.         Context c = new InitialContext();
  39.         return (DataSource) c.lookup("java:comp/env/conexionPruebas");
  40.     }
  41. }


Si no estoy mal conexionPruebasss deberia ser el nombre de mi jndi que se muestra en el glassfish en el apartado de recursos JDBC, el cual esta igual.

Me di cuenta de que no entra en try de la funcion datos() y pasa al catch enviandome en pantalla lo siguiente

javax.naming.NamingException: Lookup failed for 'java:comp/env/conexionPruebas' in SerialContext [Root exception is javax.naming.NameNotFoundException: No object bound to name java:comp/env/conexionPruebas]


Pero no encuentro cual es el problema.

Por cierto he hecho este mismo ejemplo sin cambiar nada, pero con la version de java EE5 y funciona bien pero con java EE6 nop, ademas de que el servidor es el mismo glassfish v3.

Si pudieran darme una ayudada... estaria muy agradecido.