2017-11-27 14 views
0

私たちはアプリケーションでJersey 2.26を実装しており、EntityManagerに問題があります。私たちはJPAを使用しており、永続クラスは別のjarファイルにパッケージ化されています。ジャージ2.x JPAの問題 - org.hibernate.UnknownEntityTypeException:Persisterを見つけることができません

はリンクの下からの参照を取った: - How do I properly configure an EntityManager in a jersey/hk2 application?

を私たちのようなネイティブクエリを実行することができます:

em.createNativeQuery("select employee_name from employee where employee_id = 2406") 
    .getSingleResult(); 

しかし

em.find(Employee.class,2406) 

は、エラーの下に与えている: -

org.hibernate.UnknownEntityTypeException: Unable to locate persister:

persistence.xmlの

<persistence-unit name="TestPersistence" transaction-type="JTA"> 
    <provider>org.hibernate.ejb.HibernatePersistence</provider> 
    <jta-data-source>java:jboss/datasources/TestPersistenceDS</jta-data-source> 
    <properties> 
     <property name="hibernate.cache.provider_class" 
        value="org.hibernate.cache.NoCacheProvider" /> 
     <property name="hibernate.connection.driver_class" 
        value="com.sybase.jdbc4.jdbc.SybDriver" /> 
     <property name="hibernate.dialect" 
        value="org.hibernate.dialect.SybaseDialect" /> 

エンティティ従業員

@Entity 
@Table(name = "employee") 
public class Employee implements Serializable { 

    private static final long serialVersionUID = 1L; 

    @Id 
    @Column(name = "emp_id") 
    private Long empId; 

    @Column(name = "emp_name") 
    private String empName; 

public Long getEmpId() { 
    return empId; 
} 

public void setEmpId(Long empId) { 
    this.empId = empId; 
} 

public String getEmpName() { 
    return empName; 
} 

public void setEmpName(String empName) { 
    this.empName = empName; 
} 

任意の助けいただければ幸いです。

注:MavenまたはSpringは使用しません。ランタイム環境に応じて:アプリケーションは、私はあなたが

... 
<jta-data-source>java:jboss/datasources/TestPersistenceDS</jta-data-source> 
<jar-file>../lib/a-separate.jar</jar-file> 
... 

NOTEようentitesがある瓶、何かについてpersistence.xmlで伝えるために必要があると思うwildfdly 11

+1

さらに詳しい情報を提供してください。 Employeeクラスのソースコードとpersistence.xml –

+0

ありがとうSimonと同様に、persistence.xmlとEmployeeクラスを共有しました。 – gari004

+0

EntityManagerの入手方法は?あなたはWildFlyにいるので、@PersistenceContextのprivate EntityManager emのように挿入できます。 –

答えて

0

We are using JPA and the persistence classes are packaged in a separate jar.

に配備されていますパスが変化することがあり、また、ジャーのエンティティが強化される必要があるかもしれない。

関連する問題