Nouveauté d'EJB3, aidez-nous/expliquez.Impossible de créer EntityManager
l'intérieur d'un bean session Je déclare un EntityManager que suivre
@PersistenceContext(unitName="ScheduleUnit")
private EntityManager em;
et cela fonctionne. Mais quand je fais
private EntityManager em;
private EntityManagerFactory emf;
public void myFunction() {
emf = Persistence.createEntityManagerFactory("ScheduleUnit");
em = emf.createEntityManager();
}
Je reçois l'erreur suivante:
A JDBC Driver or DataSource class name must be specified in the ConnectionDriverName property
Et voyez cet article, si vous écrivez j2se app: http://java.sun.com/developer/technicalArticles/J2SE/Desktop/persistenceapi/ – Dmitry
Merci Dmitry, J'utilise Genonimo au lieu de Glassfish pour le serveur J2EE. J'ai correctement configuré la source de données. org.apache.openjpa.persistence.PersistenceProviderImpl myDatasource jta-data- source> com.skomarcorp.Schedule persistence-unit>. Pouvez-vous expliquer la différence entre utiliser @PersistenceContext et EntityManagerFactory et pourquoi l'un est meilleur que l'autre? –
duvo
Voici mon persistence.xml:
L'utilisation d'annotations simplifie le code :) Dans ce cas, le conteneur (geronimo) résout automatiquement le lien vers votre gestionnaire d'entités et le cycle de vie de l'instance EntityManager est géré par conteneur. Voir ceci http://java.sun.com/javaee/5/docs/tutorial/doc/bnbqw.html – Dmitry