Ich habe einen REST-Service, der auf eine MySQL-Datenbank zugreifen. Ich benutze Wildfly 10 und MySQL 5.7.12. Ich versuche, den EntityManager als eine Injektion zu erhalten, und ich erhalte den folgenden Fehler, wenn ich die find
Methode für meine Entität ausführe, die den Tabelleninhalt abbildet.Wildfly 10 Persistenz MySQL-Tabelle nicht gefunden
org.h2.jdbc.JdbcSQLException: Table "MYTABLE" not found; SQL statement:
In der RESTService Klasse habe ich
@PersistenceContext(unitName="myUnit")
protected EntityManager entityManager;
und meine persistence.xml Datei ist:
<?xml version="1.0" encoding="UTF-8"?>
<persistence 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"
version="2.1">
<persistence-unit name="myUnit">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/mytable" />
<property name="javax.persistence.jdbc.user" value="user" />
<property name="javax.persistence.jdbc.password" value="pass" />
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.archive.autodetection" value="class, hbm"/>
</properties>
</persistence-unit>
</persistence>
Das Problem ist, dass, wenn anstelle der Injektion von mit rufe ich an das Unternehmen Manager mit der manuellen Art und Weise funktioniert alles glatt.
EntityManagerFactory emFactory;
emFactory = Persistence.createEntityManagerFactory("myUnit");
EntityManager em = emFactory.createEntityManager();
Könnten Sie mir geben einige Hinweise, wie die PersistenceContext zu benutzen? Der Code ist irgendwie sauberer und ich benutze ihn lieber.
Gibt es eine Möglichkeit, diese Datenquelle projektweise zu erstellen? Ich möchte die Wildfly-Konfiguration nicht ändern. Für andere Dinge konnte ich jboss-deployment-structure.xml – jlanza