2016-02-17 76 views
1

由於持久性模塊存在一些問題而陷入困境。部署期間持久性單元名稱問題WildFly

越來越像錯誤 「意外的問題收集統計數據:java.lang.IllegalStateException:JBAS011477:持久性單元 'EAR_FileName.ear/EJB_Module_Persistence.jar#MyPersistenceUnit' 不可用」

我的persistence.xml文件的位置如下所示。請糾正我,如果我錯了 - 按照包裝結構持續單元名稱開始EAR文件名然後我的持久性模塊名然後#單位名,這是絕對正確的。我使用PersistenceContext在另一個ejb中注入持久性單元。

@PersistenceContext(unitName="MyPersistenceUnit") 
private EntityManager em; 

有誰能告訴我我在這裏做什麼錯。我將不勝感激您提供的任何輸入/幫助。

這裏是我下面的項目的模塊結構

EAR_FileName.ear 
     | 
     |---EJB_Module1.jar 
     | 
     |---EJB_Module_Persistence.jar 
        | 
        |---META-INF 
          | 
          |---persistence.xml 

這裏是我的persistence.xml文件

<?xml version="1.0" encoding="UTF-8"?> 
<persistence version="2.0" 
    xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation=" 
     http://java.sun.com/xml/ns/persistence 
     http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> 
    <persistence-unit name="MyPersistenceUnit" transaction-type="JTA"> 
     <provider>org.hibernate.ejb.HibernatePersistence</provider> 
     <jta-data-source>java:/MyTransactionDS</jta-data-source> 
     <class>all class</class> 
     <properties> 
      <property name="hibernate.show_sql" value="false"/> 
       <property name="hibernate.format_sql" value="true"/> 
      <property name="hibernate.use_sql_comments" value="true"/> 
      <property name="hibernate.cache.use_second_level_cache" value="true"/> 
     </properties> 
    </persistence-unit> 
</persistence> 

附:使用WildFly 8.1作爲應用程序服務器。

在此先感謝。

回答