Hibernate找不到我在单独的jar文件中的Entity类

时间:2010-06-24 15:16:49

标签: hibernate jpa

我的persistence.xml位于A.jar中,实体类位于B.jar中。当尝试使用实体管理器(来自A.jar)创建查询时,我遇到异常,说它无法找到NamedQueries。但是,命名查询使用注释在实体类中列出。

尝试使用<jar-file/>在persistence.xml中包含B.jar,但它不起作用。这是我尝试过的。

<persistence>
   <persistence-unit name="myapp">
      <provider>org.hibernate.ejb.HibernatePersistence</provider>
      <jta-data-source>java:/DefaultDS</jta-data-source>
      <properties>
         ... ...
      </properties>
      <jar-file>lib/B.jar</jar-file>
      <jar-file>../lib/B.jar</jar-file>
      <jar-file>WEB-INF/lib/B.jar</jar-file>
      <jar-file>B.jar</jar-file>

      <class>com.mypackage.Bar</class>
      <class>com.mypackage.Foo</class>
   </persistence-unit>
</persistence>

1 个答案:

答案 0 :(得分:0)

弄清楚我的问题。

<jar-file/>没有必要。

除了当前jar之外的jar中的所有实体类都应列在<class/>中,应配置persistence.xml以使<class/>节点位于<properties/>前面(XML模式)将所有节点定义为序列)。