MySQL 데이터베이스에 액세스하는 REST 서비스가 있습니다. Wildfly 10과 MySQL 5.7.12를 사용하고 있습니다. 주입으로 EntityManager를 얻으려고하는데 테이블 내용을 매핑하는 엔티티에 대해 find
메소드를 실행할 때 다음 오류가 발생합니다. RESTService 클래스에서 Wildfly 10 지속성 MySQL 테이블을 찾을 수 없음
org.h2.jdbc.JdbcSQLException: Table "MYTABLE" not found; SQL statement:
@PersistenceContext(unitName="myUnit")
protected EntityManager entityManager;
을 내 persistence.xml 파일은 다음과 같습니다
<?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>
문제는 대신 주사를 사용하는 나는 개체를 검색하는 경우 관리자는 수동 방식으로 모든 것을 매끄럽게 사용합니다.
EntityManagerFactory emFactory;
emFactory = Persistence.createEntityManagerFactory("myUnit");
EntityManager em = emFactory.createEntityManager();
PersistenceContext를 사용하는 방법에 대한 힌트를 제공해 주시겠습니까? 코드는 어떻게 든 더 깨끗하고 나는 그것을 사용하는 것을 선호한다.
이 데이터 소스 프로젝트를 현명하게 만들 수있는 방법이 있습니까? Wildfly 구성을 수정하고 싶지 않습니까? 다른 것들은 jboss-deployment-structure.xml에 접근 할 수있었습니다. – jlanza