Немає постачальника наполегливості для EntityManager


148

У мене є persistence.xmlте саме ім'я, яке використовується TopLinkпід META-INFкаталогом. Потім у мене є свій код, який називає його:

EntityManagerFactory emfdb = Persistence.createEntityManagerFactory("agisdb");

Але я отримав таке повідомлення про помилку:

2009-07-21 09: 22: 41,018 [основна] ПОМИЛКА - Немає постачальника стійкості для EntityManager з іменем agisdb
javax.persistence.PersistenceException: Немає постачальника наполегливості для EntityManager з іменем agisdb
    на javax.persistence.Persistence.createEntityManagerFactory (Persistence.java:89)
    на javax.persistence.Persistence.createEntityManagerFactory (Persistence.java:60)

Ось persistence.xml:

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
    <persistence-unit name="agisdb">
        <class>com.agis.livedb.domain.AddressEntity</class>
        <class>com.agis.livedb.domain.TrafficCameraEntity</class>
        <class>com.agis.livedb.domain.TrafficPhotoEntity</class>
        <class>com.agis.livedb.domain.TrafficReportEntity</class>
        <properties>
            <property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/agisdb"/>
            <property name="toplink.jdbc.driver" value="com.mysql.jdbc.Driver"/>
            <property name="toplink.jdbc.user" value="root"/>
            <property name="toplink.jdbc.password" value="password"/>
        </properties>
    </persistence-unit>
</persistence>

Це мало бути на уроці. Тим не менш, я отримав вищевказану помилку.

Відповіді:


85

Після цього <persistence-unit name="agisdb">визначте ім'я постачальника наполегливості:

<provider>org.hibernate.ejb.HibernatePersistence</provider>

5
Я використовую Дербі, і не потрібно було це вказувати (я це робив, але потім видалив його, як тільки я вирішив проблему, просто щоб переконатися). Я отримав помилку, нарешті, тому, що persistent.xml не був у папці src / META-INF, навіть якщо він був у папці у вихідному шляху Eclipse для проекту. Я десь думаю, що важко бути на src / *
Fuhrmanator

6
це не треба було в моєму випадку, але classpathing глибокого сну-EntityManager * .jar , як зазначено в Ualter - молодший відповідь нижче ніж . Я використовую автономний додаток GWT зі сплячим сном-core-4.3.7.jar , hibernate-entitmanager-4.3.7.Final.jar та hibernate-jpa-2.1-api-1.0.0.jar .
Андреас Дітріх

3
Так само і з @AndreasDietrich, після заміни артефакту "hibernate-core-4.3.10" на "hibernate-entitmanager-4.3.10" у pom.xml (я використовую maven) ця помилка зникла. Власне, hibernate.org/orm/downloads говорить про те, що для JPA слід використовувати "hibernate-entitmanager-4.3.10".
Гонг

1
Крім цього, мені також довелося перейти від сплячого режиму-менеджменту-3.4.0.GA до 3.6.10 . Фіналу . Про всяк випадок, якщо у вас все ще є застаріла база коду за допомогою Hibernate 3.
Javi Vazquez

5
Я трохи здивований, що ви не зіткнетеся з проблемою зі своїм <provider/>, при використанні сплячого режиму-4 ви повинні змінити свого постачальника <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>, дивіться stackoverflow.com/questions/23041964/… .
Роб

86

Помістіть "hibernate-entitymanager.jar"класну програму.
Для новіших версій слід використовувати "hibernate-core.jar"замість застарілихhibernate-entitymanager

Якщо ви працюєте через якийсь IDE, наприклад Eclipse :Project Properties -> Java Build Path -> Libraries.

В іншому випадку помістіть це у /libсвою заявку.


3
Мені потрібно кілька годин, щоб зрозуміти, що це було причиною. Для інших людей, які шукають цю криваву банку, у разі сплячки 4.1.3, її у сплячому режимі - звільнення-4.1.3. Фінал \ lib \ jpa \ hibernate-entitmanager-4.1.3.Final.jar
Ведран

7
І для тих із нас, хто використовує Мейвен, це був би груповий org.hibernateартефактидhibernate-entitymanager
Саймон Форсберг

2
Для мене це був eclipselink.jar, якого не вистачало на шляху. Ніякої сплячки * something.jar на шляху зовсім.
користувач невідомий

3
Щойно витратив кілька годин на підтвердження persistent.xml на шляху до класу, і порівнюючи кожен аспект проекту, для якого він працював, і проекту, для якого він не працював. Дуже оманливе повідомлення про помилку, оскільки це може статися, якщо persistent.xml відсутній, якщо ПУ з цим іменем відсутнє або, мабуть, якщо не вистачає сплячої банки!
Девід Манн

Для мене це був org.eclipse.persistence.jpaтест на обсяг.
Марек

67

Переконайтеся, що persistence.xmlфайл знаходиться в каталозі:<webroot>/WEB-INF/classes/META-INF


8
це не спрацювало для мене, принаймні модуль стійкості не знайдений: помилка 'null'. Переміщення назад до /src/main/resources/META-INF/persistence.xml
tomasb

1
Я думаю, це стосується тих, хто використовує toplink (або інші матеріали, пов’язані з Інтернетом), тому що всі інші відповіді тут можуть бути більш доречними.
Simon Forsberg

2
Дякую, для мене шлях цільовий / класи / META-INF
Frizz1977

Так само, з якихось дивних причин це потрібно знаходитись у каталозі META-INF, інакше не вийде ...
Томас

17

Мені це було потрібно у моєму файлі pom.xml:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
    <version>4.2.6.Final</version>
</dependency>

Працює для версії 4.3.11.
petertc

Це застаріло, див. Вище. Використовуйте замість цього сплячий режим.
foo

16

Зіткнулися з тим же питанням і не могли знайти рішення досить тривалий час. У моєму випадку це допомогло замінити

<provider>org.hibernate.ejb.HibernatePersistence</provider>

з

<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>

Прийняв рішення від сюди


2
Оновлено з Hibernate 4.3.5 до 5.2.12, і ця зміна імені постачальника вирішила проблему для мене. Цей параметр, як видається, дозволяє JPA використовувати основний файл .jar замість управління суттю .jar, який відображається як застарілий у центральному сховищі Maven. Велике спасибі за спільний доступ.
joshpt

10

Є ще один момент: Якщо ви зіткнулися з цією проблемою в середовищі Eclipse RCP, можливо, вам доведеться змінити заводську генерацію з Persistence.createEntityManagerFactoryнаnew PersistenceProvider().createEntityManagerFactory

див. ECF для детальної дискусії з цього питання.


Це була саме та проблема, з якою у мене виникло org.eclipse.persistence.jpa 2.4.0. Я буквально провів 2 години, тягнучи волосся, цікавившись, чому він не міг знайти мою persisence.xml. Схоже, всі приклади цього не включають. о ну ... багато спасибі!
Марк Міллер

9

Можливо, ви визначили одного постачальника як, <provider>org.hibernate.ejb.HibernatePersistence</provider>але посилаєтесь іншого на jar. Це сталося зі мною: мій постачальник persistent.xml був openjpa, але я використовував eclipselink у своєму класі. Сподіваюся, що це допоможе!


7

Коротка порада:

  • перевірте, чи є persistent.xml у вашому класі
  • перевірте, чи є постачальник глибокого сну у вашому класі

Використовуючи JPA в автономному додатку (за межами JavaEE), потрібно десь вказати постійного постачальника. Це можна зробити двома способами, про які я знаю:

  • або додайте елемент постачальника до блоку збереження: <provider>org.hibernate.ejb.HibernatePersistence</provider>(як описано у правильному відповіді Кріса: https://stackoverflow.com/a/1285436/784594 )
  • або провайдера для інтерфейсу javax.persistent.spi.PersistenceProvider потрібно вказати як послугу, дивіться тут: http://docs.oracle.com/javase/6/docs/api/java/util/ServiceLoader.html (зазвичай це включається, коли ви включаєте сплячку або іншу реалізацію JPA у свій класний шлях

У моєму випадку я з’ясував, що через неправильну конфігурацію Maven, банку зі сплячим режимом, що не перебуває в режимі сплячого режиму, не включався як залежність, навіть якщо це була тимчасова залежність іншого модуля.


/ facepalm - я забув додати залежність maven для сплячого постачальника. Дякую!
jgitter

5

Якщо ви використовуєте Eclipse, переконайтеся, що шаблон виключення не видаляє ваші persistence.xmlвихідні папки на шляху збірки.

  1. Перейдіть до Властивості -> Шлях збірки Java -> Джерело вкладка
  2. Перевірте свою схему виключення, яка знаходиться за адресою
    MyProject/src/main/java -> Excluded: <your_pattern>
    вузлі дерева
  3. За бажанням встановіть його Excluded: (None), вибравши вузол і натисніть кнопку Змінити ... зліва.

Вирішив мою проблему. Вилучений шаблон був встановлений на "**" після отримання / витягування. Я не знаю, чому ...
Джоселін

5

Я запізнююсь на кілька років тут, але я потрапив на той самий виняток, намагаючись змусити Hibernate 3.5.1 працювати з HSQLDB та настільною програмою JavaFX. Я змусив його працювати за допомогою цієї нитки та багато проб і помилок. Здається, ви отримуєте цю помилку з цілого ряду проблем:

No Persistence provider for EntityManager named mick

Я спробував побудувати приклади підручника зі сплячого режиму, але оскільки я використовував Java 10, я не зміг змусити їх легко створювати та працювати. Я відмовився від цього, не дуже бажаючи витрачати час на вирішення своїх проблем. Налаштування файла module-info.java (Jigsaw) - це ще одна зачіска, яку багато людей ще не виявили.

Дещо заплутаним є те, що ці (нижче) були єдиними мені потрібними двома файлами у моєму файлі build.gradle. З документа зі сплячки не зрозуміло, які саме банки потрібно включити. Entity-менеджер викликав плутанину і більше не потрібен в останній сплячій версії, а також не є javax.persistent-api. Зауважте, я тут використовую Java 10, тому мені довелося включити jaxb-api, щоб усунути деякі помилки, пов’язані з xml, а також додати запис до модуля збереження Java у мій файл module-info.java.

Build.gradle

// https://mvnrepository.com/artifact/org.hibernate/hibernate-core
compile('org.hibernate:hibernate-core:5.3.1.Final')

// https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api
compile group: 'javax.xml.bind', name: 'jaxb-api', version: '2.3.0'

Модуль-info.java

// Used for HsqlDB - add the hibernate-core jar to build.gradle too
requires java.persistence;

У сплячому режимі 5.3.1 вам не потрібно вказувати постачальника нижче у вашому файлі persistent.xml. Якщо такий не надається, за умовчанням вибрано постачальника режиму глибокого сну.

<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>

Файл persistent.xml повинен розташовуватися у правильному каталозі, таким чином:

src/main/resources/META-INF/persistence.xml

Перебравшись у схибний вихідний код у відладчику Intellij, де він перевіряє діалект, також викинув саме такий виняток, через відсутність властивості діалекту у файлі persistent.xml. Я додав це (додайте правильний для вашого типу БД):

<property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>

Після цього я все-таки отримав той самий виняток, тому повторний перегляд налагоджувача в Intellij виявив, що у тестового об'єкта, який я намагався наполягати (простий приклад батько-дитина), були відсутні примітки для відносин OneToMany, ManyToOne. Я це зафіксував, і виняток пішов, і мої особи зберігалися нормально.

Ось моя повна остаточна стійкість.xml:

<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
            http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
         version="2.1">

<persistence-unit name="mick" transaction-type="RESOURCE_LOCAL">
    <description>
        Persistence unit for the JPA tutorial of the Hibernate Getting Started Guide
    </description>

    <!-- Provided in latest release of hibernate
    <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
    -->

    <class>com.micks.scenebuilderdemo.database.Parent</class>
    <class>com.micks.scenebuilderdemo.database.Child</class>

    <properties>
        <property name="javax.persistence.jdbc.driver" value="org.hsqldb.jdbc.JDBCDriver"/>

        <property name="javax.persistence.jdbc.url"
                  value="jdbc:hsqldb:file:./database/database;DB_CLOSE_DELAY=-1;MVCC=TRUE"/>

        <property name="javax.persistence.jdbc.user" value="sa"/>
        <property name="javax.persistence.jdbc.password" value=""/>

        <property name="hibernate.show_sql" value="true"/>
        <property name="hibernate.hbm2ddl.auto" value="create"/>
        <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
    </properties>

</persistence-unit>

</persistence>

Я, мабуть, витратив близько пів дня на цей дорогоцінний камінь. Моя порада буде починати дуже просто - одна тестова суть з одним або двома полями, оскільки, схоже, цей виняток може мати багато причин.


Дякую тонну за деталі конфігурації. Дійсно допомогли її вирішити.
Doogle

4

Кутовий випадок: якщо ви використовуєте m2Eclipse, він автоматично додає до папки ваших ресурсів виключення. Тоді, коли ви спробуєте запустити тести всередині eclipse, подальша відсутність persistent.xml призведе до цієї помилки.


3

Переконайтеся, що ви створили файл persistent.xml у папці 'src'. Я створив під папкою проекту, і це була моя проблема.


Eclipse 4.4.0 не хоче вкладати папки SRC, тому я ставив META-INF на найвищий рівень, думаючи, що наполегливість.xml на класному шляху буде адекватною. НЕ! Мені довелося створити вручну src / META-INF (в операційній системі) і перемістити файл persistent.xml вручну. Можливо, це можливо зробити в Eclipse, але я не міг цього зрозуміти.
Фурманатор

3

Якщо ви використовуєте Maven, можливо, він не шукає потрібного місця для папки META-INF. Інші згадали про копіювання папки, але інший спосіб, який працював на мене, - сказати Мейвіну, де її шукати, використовуючи <resources>тег. Дивіться: http://maven.apache.org/plugins/maven-resources-plugin/examples/resource-directory.html


2

Це трапляється, коли керівник суб'єкта господарювання намагається вказати на багато одиниць стійкості. Виконайте наступні дії:

  1. відкрийте відповідний файл у своєму редакторі (за умови, що ваш проект був закритий у вашій IDE)
  2. видаліть увесь код, що стосується стійкості та управління менеджером особи
  3. збережіть файл
  4. відкрийте проект у своїй IDE
  5. тепер прив’яжіть db або таблицю на ваш вибір

2

Я зіткнувся з тією ж проблемою, але на EclipseLink версії 2.5.0 .

Я вирішив свою проблему, додавши ще один файл jar, який був обов'язково ( javax.persistence_2.1.0.v201304241213.jar.jar );

Необхідні банки:
- javax.persistence_2.1.0.v201304241213.jar
- eclipselink.jar
- jdbc.jar (залежно від використовуваної бази даних).

Я сподіваюся, що це допомагає.


2

У мене також була ця помилка, але проблема полягала в урі простору імен persistence.xml.

Я замінив http://xmlns.jcp.org/xml/ns/persistenceнаhttp://java.sun.com/xml/ns/persistence і версію 2.1 до 2.0.

Зараз це працює.


Саме так сталося зі мною за допомогою Tomcat .. Я просто додав повний заголовок, щоб уточнити для нових користувачів
childno͡.de

2

Вам потрібно додати hibernate-entitmanager-x.jar у classpath.

У Hibernate 4.x, якщо баночка присутня, не потрібно додавати файл org.hibernate.ejb.HibernatePersistence у файл persistent.xml.


1

На питання вже відповіли, але я просто хотів опублікувати пораду, яка мене стримувала. Цей виняток було викинуто після попередніх помилок. Я отримував це:

property toplink.platform.class.name is deprecated, property toplink.target-database should be used instead.

Незважаючи на те, що я змінив persistent.xml, щоб включити нову назву властивості:

<property name="toplink.target-database" value="oracle.toplink.platform.database.oracle.Oracle10Platform"/>

Після повідомлення про застаріле ім’я властивості, я отримував таку ж PersistentException, як вище, і цілу іншу рядок винятків. Моя порада: обов’язково перевірте початок виключення ковбаси.

Здається, є помилка в Glassfish v2.1.1, де повторне розгортання або демонтаж і розгортання не оновлюють файл persistent.xml, який десь кешується. Мені довелося перезапустити сервер, і тоді він спрацював.


1

У контексті OSGi необхідно перелічити ваші постійні одиниці в MANIFEST.MF, що використовується в комплекті, наприклад

JPA-PersistenceUnits: my-persistence-unit

В іншому випадку пакет JPA не буде знати, що ваш пакет містить одиниці стійкості.

Дивіться сторінку http://wiki.eclipse.org/EclipseLink/Examples/OSGi/Developing_with_EclipseLink_OSGi_in_PDE .


1

Вам потрібні такі файли jar на classpath:

  1. antlr-2.7.6.jar
  2. commons-collection-3.1.jar
  3. dom4j-1.6.1.jar
  4. hibernate-commons-annotations-4.0.1.Final.jar
  5. hibernate-core-4.0.1.Final.jar
  6. hibernate-entitmanager.jar
  7. hibernate-jpa-2.0-api-1.0.0.Final.jar
  8. javassist-3.9.0.jar
  9. jboss-logging-3.1.1.GA.jar
  10. jta-1.1.jar
  11. slf4j-api-1.5.8.jar
  12. xxx-jdbc-driver.jar


1

Hibernate 5.2.5
Файли Jar, необхідні на шляху до класу. Це знаходиться в необхідній папці Hibernate 5.2.5 Остаточний реліз. Його можна завантажити з http://hibernate.org/orm/downloads/

  1. antlr-2.7.7
  2. cdi-api-1.1
  3. однокласник-1.3.0
  4. dom4j-1.6.1
  5. ел-апі-2.2
  6. geronimo-jta_1.1_spec-1.1.1
  7. hibernate-commons-annotation-5.0.1.Final
  8. зимуючий-core-5.2.5.Фінальний
  9. зимувати-jpa-2.1-api-1.0.0.Final
  10. jandex-2.0.3.Final
  11. javassist-3.20.0-GA
  12. javax.inject-1
  13. jboss-перехоплювач-api_1.1_spec-1.0.0.Beta1
  14. jboss-logging-3.3.0.Final
  15. jsr250-api-1.0

Створіть XML-файл "persistent.xml" у

YourProject / src / META-INF / persistent.xml

стійкість.xml

<?xml version="1.0" encoding="UTF-8"?>

<persistence xmlns="http://xmlns.jcp.org/xml/ns/persistence"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence
         http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"
         version="2.1">

<persistence-unit name="sample">

    <class>org.pramod.data.object.UserDetail</class>
    <exclude-unlisted-classes>true</exclude-unlisted-classes>
    <properties>
        <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
        <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/hibernate_project"/>
        <property name="hibernate.connection.username" value="root"/>
        <property name="hibernate.connection.password" value="root"/>
        <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
        <property name="hibernate.show_sql" value="true"/>
        <property name="hibernate.format_sql" value="false"/>

        <property name="hibernate.cache.use_second_level_cache" value="false"/>

        <property name="hibernate.archive.autodetection" value="true"/>
    </properties>
</persistence-unit>

  1. будь ласка, занотуйте інформацію, зазначену в тезі <persistance>, а версія повинна бути 2.1.
  2. будь ласка, зверніть увагу на ім'я <persistance-unit> тег, ім'я згадується як "зразок" . Це ім’я потрібно використовувати точно так само під час завантаження вашого

EntityManagerFactor = Persistance.createEntityManagerFactory ("зразок"); . "зразок" може бути змінено згідно з умовами назви.

Тепер створіть клас Entity. з назвою, як на моєму прикладі UserDetail, в пакеті org.pramod.data.object

UserDetail.java

package org.pramod.data.object;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name = "user_detail")
public class UserDetail {
    @Id
    @Column(name="user_id")
    private int id;
    @Column(name="user_name")
    private String userName;

    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }   
    @Override
    public String toString() {
       return "UserDetail [id=" + id + ", userName=" + userName + "]";
    }
}

Тепер створіть клас з основним методом.

HibernateTest.java

package org.pramod.hibernate;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import org.pramod.data.object.UserDetail;

public class HibernateTest {
    private static EntityManagerFactory entityManagerFactory;

    public static void main(String[] args)  {
        UserDetail user = new UserDetail();
        user.setId(1);
        user.setUserName("Pramod Sharma");

        try {
            entityManagerFactory = Persistence.createEntityManagerFactory("sample");
            EntityManager entityManager = entityManagerFactory.createEntityManager();
            entityManager.getTransaction().begin();
            entityManager.persist( user );
            entityManager.getTransaction().commit();
            System.out.println("successfull");
            entityManager.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

}

Вихід буде

UserDetail [id=1, userName=Pramod Sharma]
Hibernate: drop table if exists user_details
Hibernate: create table user_details (user_id integer not null, user_name varchar(255), primary key (user_id))
Hibernate: insert into user_details (user_name, user_id) values (?, ?)
successfull

1

У моєму випадку раніше я використовую ідею для генерування сутності за схемою бази даних, і persistence.xmlавтоматично генерується в src/main/java/META-INF, і відповідно до https://stackoverflow.com/a/23890419/10701129 я переміщую її до src/main/resources/META-INF, також позначеної META-INF як вихідний корінь. Це працює для мене.

Але просто позначення оригінального META-INF (тобто src / main / java / META-INF) як вихідний корінь не працює, що мене бентежить.

і це структура: введіть тут опис зображення


0

Якщо Persistence.createEntityManagerFactory("JPAService")в різних класах є різні імена, ніж ви отримуєте помилку. Рефакторинг можна отримати різні назви, що було в моєму випадку. В одному класі генерується автоматично Persistence.createEntityManagerFactory("JPAService")в private void initComponents(), ContactsTable клас відрізнявся від Persistence.createEntityManagerFactory("JPAServiceExtended")в класі DBManager.


0

Моє вирішено, додавши інформацію в persistent.xml, наприклад, <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>а потім переконайтесь, що у вас є бібліотека на classpath, наприклад, в Maven додати залежність, як

<dependency>
  <groupId>org.eclipse.persistence</groupId>
  <artifactId>eclipselink</artifactId>
  <version>2.5.0</version>
</dependency>

0

Перевірте ім'я постійної одиниці

<persistence-unit name="com.myapp.model.jpa"
    transaction-type="RESOURCE_LOCAL">    
public static final String PERSISTENCE_UNIT_NAME = "com.myapp.model.jpa";
Persistence.createEntityManagerFactory(**PERSISTENCE_UNIT_NAME**);

0

У моєму випадку мова йшла про помилку в двох властивостях, як показано нижче. Коли я змінив їх, "Немає надійності постачальника для EntityManager з іменем" зник.

Тож ви можете спробувати перевірити зв’язок із вашими властивостями, щоб перевірити, чи все правильно.

<property name="javax.persistence.jdbc.url" value="...”/>
<property name="javax.persistence.jdbc.password" value="...”/>

Дивна помилка, я був зовсім збентежений через це.


0

Спробуйте також скопіювати persistent.xml вручну в папку <project root>\bin\META-INF. Це вирішило проблему в Eclipse Neon за EclipseLink 2.5.2допомогою простого проекту плагінів.


0

Мав те саме питання, але це справді працювало для мене:

mvn install -e  -Dmaven.repo.local=$WORKSPACE/.repository.

Примітка: Команда maven, наведена вище, переустановить усі залежності вашого проекту з нуля. Ваша консоль буде завантажена докладними журналами завдяки запиту мережевого запиту.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.