休眠未知实体

问题描述:

我有两个映射了休眠类的jar文件。一个jar文件完美地工作,对于下一个jar文件,它没有被映射。我收到“未知实体”异常。 Persistence.xml很好,但我不知道为什么会发生这种情况。任何猜测什么是螨问题?休眠未知实体

+0

堆栈跟踪将是有益的,这个问题给出了很少的信息。 – ashurexm 2010-06-05 04:05:54

+0

对不起,我错过了,感谢manyxcxi java.lang.IllegalArgumentException异常:未知的实体:在org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:223)com.test.Equipment 在sun.reflect.NativeMethodAccessorImpl.invoke0 (本机方法) 在sun.reflect.NativeMethodAccessorImpl.invoke(来源不明) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(来源不明) 在java.lang.reflect.Method.invoke(来源不明) 在org.springframework .orm.jpa.ExtendedEntityManagerCreator $ ExtendedEntityManagerInvocationHandler.invoke – Raj 2010-06-05 04:32:20

+0

你可以编辑你的问题来添加这个堆栈跟踪并删除评论......它会更好看。 – Yuval 2010-06-05 06:00:32

检查您的Equipment课程是否有@Entity

此批注(@Entity)将类标记为Hibernate(JPA)实体。

对我来说这是一个重构问题。我重构了我的实体包,但忘记将组件扫描路径更改为新的包名称。之后,实现和改变,它的工作!

尝试在您的实体类设备上添加以下注释。如果需要更改相应的表名:

@Entity 
@Table(name = "Equipment") 
@XmlRootElement 

package Test; 

import java.util.EnumSet; 

import org.hibernate.Session; 
import org.hibernate.SessionFactory; 
import org.hibernate.Transaction; 
import org.hibernate.boot.Metadata; 
import org.hibernate.boot.MetadataSources; 
import org.hibernate.boot.registry.StandardServiceRegistryBuilder; 
import org.hibernate.service.ServiceRegistry; 
import org.hibernate.tool.hbm2ddl.SchemaExport; 
import org.hibernate.tool.schema.TargetType; 
import org.junit.Test; 

import Entity.Users; 

public class TestMain { 
    public static void main(String[] arg){ 
     try { 
     ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().build(); 
     SessionFactory sessionFactory = new MetadataSources(serviceRegistry).buildMetadata().buildSessionFactory(); 
     Session session=sessionFactory.openSession(); 
     Transaction transaction=session.beginTransaction(); 
     Users users=new Users(); 
     users.setId(2); 
     session.save(users); 
     transaction.commit(); 
     session.close(); 
     sessionFactory.close(); 
     }catch(Throwable th){ 
       System.err.println("Init SessionFactory creation failed"); 
       System.err.println(th); 
       throw new ExceptionInInitializerError(th); 
     }finally { 

     } 
    } 


} 
+2

最好添加一个关于你的代码的小描述 – droidev 2016-03-29 07:33:29