У меня проблема при попытке сохранить мою модель. При создании EntityManagerFactory выдается исключение:
Blockquote
javax.persistence.PersistenceException: [PersistenceUnit: ASD] Невозможно построить EntityManagerFactory
в org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory (Ejb3Configuration.java:677)
в org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory (HibernatePersistence.java:126)
в javax.persistence.Persistence.createEntityManagerFactory (Persistence.java:52)
в javax.persistence.Persistence.createEntityManagerFactory (Persistence.java:34)
at project.serealization.util.PersistentManager.createSession (PersistentManager.java:24)
в project.serealization.SerializationTest.testProject (SerializationTest.java:25)
at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод)
at sun.reflect.NativeMethodAccessorImpl.invoke (неизвестный источник)
at sun.reflect.DelegatingMethodAccessorImpl.invoke (неизвестный источник)
в java.lang.reflect.Method.invoke (Неизвестный источник)
at junit.framework.TestCase.runTest (TestCase.java:168)
at junit.framework.TestCase.runBare (TestCase.java:134)
на junit.framework.TestResult $ 1.protect (TestResult.java:110)
в junit.framework.TestResult.runProtected (TestResult.java:128)
на junit.framework.TestResult.run (TestResult.java:113)
at junit.framework.TestCase.run (TestCase.java:124)
на junit.framework.TestSuite.runTest (TestSuite.java:232)
на junit.framework.TestSuite.run (TestSuite.java:227)
в org.junit.internal.runners.JUnit38ClassRunner.run (JUnit38ClassRunner.java:79)
в org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run (JUnit4TestReference.java:46)
в org.eclipse.jdt.internal.junit.runner.TestExecution.run (TestExecution.java:38)
в org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java:467)
в org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests (RemoteTestRunner.java:683)
в org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run (RemoteTestRunner.java:390)
в org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main (RemoteTestRunner.java:197)
Причина: org.hibernate.HibernateException: неверный тип столбца в asd.entity_one для столбца ENTITY_TWO_ID. Найдено: двойной, ожидаемый: bigint
в org.hibernate.mapping.Table.validateColumns (Table.java:284)
в org.hibernate.cfg.Configuration.validateSchema (Configuration.java:1116)
в org.hibernate.tool.hbm2ddl.SchemaValidator.validate (SchemaValidator.java:139)
в org.hibernate.impl.SessionFactoryImpl. (SessionFactoryImpl.java:349)
в org.hibernate.cfg.Configuration.buildSessionFactory (Configuration.java:1327)
в org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory (AnnotationConfiguration.java:867)
в org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory (Ejb3Configuration.java:669)
... еще 24
Код для двух сущностей следующий:
@Entity
public class EntityOne
{
@OneToOne(cascade = CascadeType.ALL, targetEntity = EntityTwo.class)
@JoinColumn(name = "ENTITY_TWO_ID")
private EntityTwo entityTwo;
...
}
@Entity
public class EntityTwo
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ELEMENT_ID")
private Long element_id;
...
}
Может кто-нибудь сказать, что не так с моей моделью?
Заранее спасибо.