簡體   English   中英

在JPA中重命名persistence.xml時發出問題,使用EclipseLink重命名hibernate

[英]Issue while renaming persistence.xml in JPA,hibernate using EclipseLink

我在創建createEntityManagerFactory時面臨以下異常,雖然我在META-INF文件夾中有persistence.xml,持久性單元ABC存在於persistence.xml中,持久性提供程序是hibernate,如下所示。

<persistence-unit name="ABC" transaction-type="RESOURCE_LOCAL"> 
    <provider>org.hibernate.ejb.HibernatePersistence</provider>

例外

javax.persistence.PersistenceException: No Persistence provider for EntityManager named ABC

在javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)

所以我認為createEntityManagerFactory沒有引用正確的persistence.xml文件,我更改了persistence-alternative.xml,並使用下面的代碼來引用persistence-alternative.xml

EntityManagerFactory emf = objEmfMap.get(unitName);
    try{
        Properties pros = new Properties();

        pros.setProperty(PersistenceUnitProperties.ECLIPSELINK_PERSISTENCE_XML, 
                         "META-INF/persistence-alternative.xml");
        // check if the entity manager factory is available for the unit else create            
        if (emf == null) {
            emf = Persistence.createEntityManagerFactory(unitName,pros);
            objEmfMap.put(unitName, emf);
        }

我將persistence-alternative.xml放在META-INF文件夾中。 但我仍然面臨同樣的例外。

javax.persistence.PersistenceException:在javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)中沒有名為ABC的EntityManager的持久性提供程序

伙計們,請讓我知道如何解決這個問題..

提前致謝

在配置文件(如persistence.xml)中進行更改時,可能有助於清理和重建項目。 轉到菜單並選擇Project - Clean ....如果Eclipse未設置為自動構建項目,則選擇Project - Build Project。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM