Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 没有名为testhibernate0的EntityManager的持久性提供程序_Java_Hibernate - Fatal编程技术网

Java 没有名为testhibernate0的EntityManager的持久性提供程序

Java 没有名为testhibernate0的EntityManager的持久性提供程序,java,hibernate,Java,Hibernate,我知道这个问题已经被问了一千次了,但我找不到一个适合我的解决方案,所以我又问了一遍。 我试图用一个类和hibernate创建一个简单的项目。但当我尝试访问我的网页时,出现了以下错误: javax.persistence.PersistenceException: No Persistence provider for EntityManager named testhibernate0 javax.persistence.Persistence.createEntityManagerFactor

我知道这个问题已经被问了一千次了,但我找不到一个适合我的解决方案,所以我又问了一遍。 我试图用一个类和hibernate创建一个简单的项目。但当我尝试访问我的网页时,出现了以下错误:

javax.persistence.PersistenceException: No Persistence provider for EntityManager named testhibernate0
javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:61)
javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
servlet.Main.start(Main.java:21)
servlet.Servlet.doGet(Servlet.java:14)
javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
这是我的班级Personne.java:

package bean;
import java.util.ArrayList;

import javax.persistence.*;

@Entity
@Table( name = "personne")
public class Personne {

    @Id 
    @GeneratedValue
    private int id ;

    private String nom ;

    @ManyToOne
    @JoinColumn(name="Maison")
    private ArrayList<Maison> listMaison;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getNom() {
        return nom;
    }

    public void setNom(String nom) {
        this.nom = nom;
    }

    public ArrayList<Maison> getListMaison() {
        return listMaison;
    }

    public void setListMaison(ArrayList<Maison> listMaison) {
        this.listMaison = listMaison;
    }

    public void addMaison(Maison maison) {
        listMaison.add(maison);
    }

}
packagebean;
导入java.util.ArrayList;
导入javax.persistence.*;
@实体
@表(name=“personne”)
公职人员{
@身份证
@生成值
私有int-id;
私有字符串名称;
@许多酮
@JoinColumn(name=“Maison”)
私人ArrayList listMaison;
公共int getId(){
返回id;
}
公共无效集合id(内部id){
this.id=id;
}
公共字符串getNom(){
返回名称;
}
公共无效集合名(字符串名){
this.nom=nom;
}
公共阵列列表getListMaison(){
返回列表;
}
公共无效setListMaison(ArrayList listMaison){
this.listMaison=listMaison;
}
公共无效addMaison(Maison Maison){
添加(maison);
}
}
这是我的persistence.xml文件(我在谷歌上发现,我应该为属性设置一个persistence.xml文件,以消除那个愚蠢的错误,但它不起作用)


org.eclipse.persistence.jpa.PersistenceProvider
人员
[...]
下面是我的罐子的截图:

如果有人能帮我


Thx我想给你两个建议

首先,确保persistence.xml文件位于以下目录中:

/WEB-INF/classes/META-INF

其次,将提供程序
org.eclipse.persistence.jpa.PersistenceProvider
更改为
org.hibernate.ejb.HibernatePersistence

更新1:

org.hibernate


  • 我想给你两个建议

    首先,确保persistence.xml文件位于以下目录中:

    /WEB-INF/classes/META-INF

    其次,将提供程序
    org.eclipse.persistence.jpa.PersistenceProvider
    更改为
    org.hibernate.ejb.HibernatePersistence

    更新1:
    
    org.hibernate
    
    

  • servlet启动(初始化)是如何休眠的。如果您没有运行持久性上下文,我想什么也不会发生。是的,我现在明白了。没有persistence.xml文件,我还是遇到了同样的错误……如果你自己找到了解决方案,就把它作为答案发布,而不是编辑你的问题。你的servlet启动(初始化)是如何休眠的。如果您没有运行持久性上下文,我想什么也不会发生。是的,我现在明白了。没有persistence.xml文件,我还是会遇到同样的错误……如果你自己找到了解决方案,就把它作为答案发布,而不是编辑你的问题。所以我试着按照你说的把它放在那里:/WEB-INF/classes/META-INF/persistence.xml,但它没有起作用。当我更改提供程序时也是一样。。当我用org.hibernate.ejb.HibernatePersistence尝试它时,它不起作用。我有另一个错误,我不知道它是否更好。。。“当未设置'hibernate.dialogue'时,对方言解析信息的访问不能为空”@Antoine请尝试更新1。我的问题已经解决!谢谢你给了我一些想法,我试着按照你说的把它放在那里:/WEB-INF/classes/META-INF/persistence.xml,但是没有用。当我更改提供程序时也是一样。。当我用org.hibernate.ejb.HibernatePersistence尝试它时,它不起作用。我有另一个错误,我不知道它是否更好。。。“当未设置'hibernate.dialogue'时,对方言解析信息的访问不能为空”@Antoine请尝试更新1。我的问题已经解决!谢谢你给我的帮助
    <?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="testhibernate0" transaction-type="RESOURCE_LOCAL">
            <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
            <class>Personne</class>
            <properties>
                  [...]
            </properties>
        </persistence-unit>
    </persistence>
    
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>4.2.6.Final</version>
    </dependency>