2012-09-18 53 views
0

我也照做按規格搜索8.2.2持久單元的範圍, 之一,但它引發異常像持續範圍失敗?

15:08:09,956 WARNING [FileZippedJarVisitor] Unable to find file (ignored): file:entities1.jar 
java.io.FileNotFoundException: entities1.jar (The system cannot find the file specified) 
...similarly other one too 

這裏失敗的原因是耳朵的結構:

|-ear-- 
      |-lib--|... some libs ... 
      |  |--my-persistence-xml.jar 
       |--entities1.jar 
       |--entities2.jar 

      |-ejb-1.jar 
      |-web-1.war 

這裏是持久性:

<persistence-unit name="pu" transaction-type="JTA"> 
     <provider>org.hibernate.ejb.HibernatePersistence</provider> 
     <jta-data-source>java:/mypu</jta-data-source> 
     <jar-file>entities1.jar</jar-file> 
     <jar-file>entities2.jar</jar-file> 
     <properties> 
      <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/> 
      <property name="hibernate.hbm2ddl.auto" value="create-drop"/> 
      <property name="hibernate.show_sql" value="true"/> 
      <property name="hibernate.format_sql" value="true" /> 
     </properties> 
    </persistence-unit> 

回答

0

persistence.xml應放置在您的0 META-INF文件夾模塊。在這種情況下,您可以使用persistence.xml而不使用<jar-file>。所有實體將自動註冊。

如果你想使用<jar-file>那麼路徑應該是

<jar-file>../../entities1.jar</jar-file> 
<jar-file>../../entities2.jar</jar-file> 

拿什麼my-persistence-xml.jar。它是jarxml

+0

感謝您的回覆。 my-persistence-xml.jar僅包含META-INF下的持久性單元,但所有實體都可用於entities1.jar和entities2.jar。 – Moorthy

+0

它也應該有'ejb-jar.xml'在META-INF – Ilya

+0

我將my-persistence-xml.jar從lib移到耳朵級別,但仍然不能識別爲有效路徑。 – Moorthy