Obteniendo una Conexion a partir de un EntityManager


En un principio pense en acceder al XML directamente, pero como sabia que la conexion se maneja a traves del objeto EntityManager decidi averiguar como se hacia y pues la forma fue la siguiente asi de simple:
public Connection getConnection() {
EntityManagerFactory emf=Persistence.createEntityManagerFactory("NombreUnidadPersistencia");
EntityManager em=emf.createEntityManager();
return ((oracle.toplink.essentials.ejb.cmp3.EntityManager)em)
.getServerSession()
.getDefaultConnectionPool()
.acquireConnection()
.getConnection();
}
Espero que esto le sirva cuando se tenga la necesidad de obtener una instancia de la conexion que esta utilizando a travez de un EntityManager.
miércoles, enero 28, 2009
Me ha servido de mucho, gracias y adelante...
miércoles, octubre 27, 2010
Hola estimado, me vota null la conexion que puedo estar haciendo mal, saludos
miércoles, abril 20, 2011
Mil Gracias!!! Es justo lo que necesito ya que me encuentro en la misma situación.
La única diferencia es que trabajo con EclipseLink(JPA 2.0) por lo que la cadena "oracle.toplink.essentials.ejb.cmp3.EntityManager" no me sirve... podrías indicarme donde puedo obtener dicha cadena pero aplicada a mi caso? Muchas Gracias