Dies ist die (unten) Fehler aus dem Stack-Trace:Würde Bereitstellung `` EntityManagerFactory` kann nicht lösen EntityManagerFactory abrufen für unitname
Caused by: java.lang.IllegalStateException: Unable to retrieve EntityManagerFactory for unitName null
at com.sun.enterprise.container.common.impl.EntityManagerWrapper.init(EntityManagerWrapper.java:138)
at com.sun.enterprise.container.common.impl.EntityManagerWrapper._getDelegate(EntityManagerWrapper.java:171)
at com.sun.enterprise.container.common.impl.EntityManagerWrapper.createQuery(EntityManagerWrapper.java:477)
...
Der Code wird wie folgt (von einem @BalusC
‚s Beispiel inspiriert ich habe bei SO heute):
@Stateless
public class GradService {
@PersistenceContext
private EntityManager em;
public List<Grad> listAll() {
return em.createQuery("SELECT g FROM Grad g", Grad.class).getResultList();
}
}
Als Referenz, das ist mein persistence.xml (Webmodul-root: Konfigurationsdateien: WEB-INF META-INF: persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
<persistence-unit name="MojaPU" transaction-type="JTA">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>jdbc/ekstraResource</jta-data-source>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
Ich habe gerade gelesen, dass der 'Kontext' eigentlich Informationen in der' persistence.xml' enthält, aus der der 'Persistenzmanager' erstellt wurde (also denke ich, dass es nicht nötig ist, es in der Datei selbst zu deklarieren) muss noch geklärt werden, was mit meiner "persistence.xml" dann nicht stimmt? – developer10
@BalusC Ich dachte nur, dass Sie vielleicht einen Blick darauf werfen könnten, da dies auf einem Beispiel von Ihnen basiert (nicht sicher, ob es auch Hibernated verwendet hat) ...) – developer10
Hast du es mit '@PersistenceContext (unitName =" MojaPU ") probiert?" –