Boa Tarde, Gostaria de saber se e possivel recuperar um java.sql.Connection , ou entao gostaria de saber se e possivel executar comandos de um script.sql por EntityManager.
Att
Marcus Barcelos
Boa Tarde, Gostaria de saber se e possivel recuperar um java.sql.Connection , ou entao gostaria de saber se e possivel executar comandos de um script.sql por EntityManager.
Att
Marcus Barcelos
Taí uma coisa que não tentei ainda! 
Então, você tentou ler o arquivo em uma String e rodar em.createNativeQuery(String); ?
Se conseguir, posta a solução.
Boa Tarde, Gostaria de saber se e possivel recuperar um java.sql.Connection , ou entao gostaria de saber se e possivel executar comandos de um script.sql por EntityManager.
Não é possivel.
Só não é possivel porque é absurdo. O papel do EntityManager não é executar SQL
Use um DataSource e pegue o connection de lá.
[
Só não é possivel porque é absurdo. O papel do EntityManager não é executar SQL
Realmente nao é o papel, mas infelizmente da: pelo createNativeQuery como disse gleise!
Da pra pegar a Connection normalmente pelo getDelegate()
E na JPA 2 vai dar pra pegar Connection por padrao!
[
Só não é possivel porque é absurdo. O papel do EntityManager não é executar SQL
Realmente nao é o papel, mas infelizmente da: pelo createNativeQuery como disse gleise!
Assim consegue executar SQL nativo , isso é diferente de pegar o connection
Da pra pegar a Connection normalmente pelo getDelegate()E na JPA 2 vai dar pra pegar Connection por padrao!
Ao que o mundo chegou … 
[
Só não é possivel porque é absurdo. O papel do EntityManager não é executar SQL
Realmente nao é o papel, mas infelizmente da: pelo createNativeQuery como disse gleise!
Assim consegue executar SQL nativo , isso é diferente de pegar o connection
Da pra pegar a Connection normalmente pelo getDelegate()E na JPA 2 vai dar pra pegar Connection por padrao!
Ao que o mundo chegou …
![]()
Assim vc consegue recuperar um java.sql.Connection do JPA (se o persisistence.xml usar transaction-type=“RESOURCE_LOCAL”)
Connection jpa = ((oracle.toplink.essentials.ejb.cmp3.EntityManager) em).getServerSession().getDefaultConnectionPool().acquireConnection().getConnection();
Até mais
Rogério