Rumah >Java >javaTutorial >Mengapa Permohonan Saya Membuang Ralat 'Tiada Pembekal Kegigihan untuk EntityManager'?

Mengapa Permohonan Saya Membuang Ralat 'Tiada Pembekal Kegigihan untuk EntityManager'?

Linda Hamilton
Linda Hamiltonasal
2024-12-13 14:32:15370semak imbas

Why Does My Application Throw a

"Tiada Penyedia Kegigihan untuk EntityManager: Penyelesaian Masalah dan Penyelesaian"

Pengenalan

Apabila mencuba untuk mencipta EntityManagerFactory menggunakan Persistence.createEntityManagerFactory(), anda mungkin menghadapi ralat berikut: "Tiada pembekal Persistence untuk EntityManager bernama [nama pengurus entiti]." Ini menunjukkan bahawa penyedia kegigihan yang sesuai untuk pengurus entiti yang ditentukan tidak dapat ditemui.

Punca dan Penyelesaian

Punca paling biasa ralat ini ialah ketiadaan pembekal kegigihan yang sesuai dalam laluan kelas aplikasi. Pembekal kegigihan ialah pelaksanaan Java Persistence API (JPA) yang mengurus kegigihan entiti ke pangkalan data tertentu.

Pengguna TopLink

Untuk aplikasi menggunakan TopLink, pastikan bahawa "toplink-essentials.jar" (atau versi yang serasi) disertakan dalam laluan kelas aplikasi. JAR ini mengandungi pelaksanaan TopLink JPA.

Pengguna Hibernate

Untuk aplikasi yang menggunakan Hibernate, pastikan "hibernate-entitymanager.jar" (atau versi yang serasi) atau "hibernate-core.jar" (untuk versi yang lebih baharu) berada dalam laluan kelas. JAR ini mengandungi pelaksanaan Hibernate JPA.

Menambah Penyedia Kegigihan

  • Menggunakan IDE (cth., Eclipse): Navigasi ke Project Properties -> Laluan Binaan Java -> Perpustakaan dan tambahkan JAR penyedia kegigihan yang sesuai pada laluan kelas projek.
  • Pengedaran Manual: Salin JAR ke direktori "/lib" aplikasi anda.

Mulakan Semula Aplikasi

Selepas menambah pembekal kegigihan, mulakan semula aplikasi untuk memastikan perubahan berkuat kuasa. EntityManagerFactory kini seharusnya berjaya dibuat tanpa ralat "Tiada Pembekal Kegigihan".

Atas ialah kandungan terperinci Mengapa Permohonan Saya Membuang Ralat 'Tiada Pembekal Kegigihan untuk EntityManager'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn