2017-09-14 2 views

Antwort

1

Ich bin mir nicht sicher, ob der Container wirklich die Verbindung offen hält. Aber lass es uns sagen. Zunächst einmal müssen Sie die EntityManager injizierbaren über CDI haben. Sie können dies tun, wie so:

@ApplicationScoped 
public class EntityManagerProducer { 
    @Produces 
    @PersistenceContext(unitName = "my-pu-name") 
    private EntityManager em; 
} 

Dann in Ihrer Initialisierung Methode können Sie verwenden:

public void init() { 
    EntityManager entityManager = CDI.current().select(EntityManager.class).get(); 
    // Do some stuff here 
    CDI.current().select(Entitymanager.class).destroy(entityManager); 
} 

Die .destroy, dass die Abhängigkeit aktiv nicht mehr ist sicherzustellen, sollte.

Verwandte Themen