Hibernate - OGM [PersistenceUnit: person] konnte Nicht erstellt Hibernate SessionFactory

erhalte ich eine folgende Fehlermeldung

Exception in thread "main" javax.die Persistenz.PersistenceException: [PersistenceUnit: person] konnte Nicht erstellt Hibernate SessionFactory
bei org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.persistenceException(EntityManagerFactoryBuilderImpl.java:1249)
bei org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.access$600(EntityManagerFactoryBuilderImpl.java:120)
bei org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:860)
bei org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850)
bei org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:425)
bei org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:849)
bei org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:75)
bei org.hibernate.ogm.jpa.HibernateOgmPersistence.createEntityManagerFactory(HibernateOgmPersistence.java:63)
bei javax.die Persistenz.Die Persistenz.createEntityManagerFactory(Persistence.java:55)
bei javax.die Persistenz.Die Persistenz.createEntityManagerFactory(Persistence.java:39)
bei com.ihappyk.utility.Utility.setUpEntityManagerFactory(Dienstprogramm.java:11)
bei com.ihappyk.Arbeit.PersonWorker.main(PersonWorker.java:14)
Verursacht durch: org.hibernate.MappingException: Konnte nicht instanziiert id-generator [entity-name=com.ihappyk.Modell.Person]
bei org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.createIdentifierGenerator(DefaultIdentifierGeneratorFactory.java:123)
bei org.hibernate.mapping.SimpleValue.createIdentifierGenerator(SimpleValue.java:225)
bei org.hibernate.intern.SessionFactoryImpl.(SessionFactoryImpl.java:323)
bei org.hibernate.cfg.- Konfiguration.buildSessionFactory(Configuration.java:1859)
bei org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:857)
... 9 mehr
Verursacht durch: org.hibernate.HibernateException: Unerwartete Rückkehr type [java.lang.Lang] für die Konvertierung der UUID
bei org.hibernate.id.UUIDGenerator.konfigurieren(UUIDGenerator.java:111)
bei org.hibernate.id.factory.internal.DefaultIdentifierGeneratorFactory.createIdentifierGenerator(DefaultIdentifierGeneratorFactory.java:117)
... 13 weitere

Utilty.java

public class Utility {
    private static EntityManagerFactory entityManagerFactory;

    //@BeforeClass
    public static EntityManagerFactory setUpEntityManagerFactory() {
        entityManagerFactory = Persistence.createEntityManagerFactory( "person" );
        return entityManagerFactory;
    }

    //@AfterClass
    public static void closeEntityManagerFactory() {
        entityManagerFactory.close();
    }
}

Persistant Class

@Entity
public class Person {

        @Id
        @GeneratedValue(generator = "uuid")
        @GenericGenerator(name = "uuid", strategy = "uuid2")
        private long id;

        private String firstName;
        private String lastName;

        public long getId() {
            return id;
        }
        public void setId(long id) {
            this.id = id;
        }
        public String getFirstName() {
            return firstName;
        }
        public void setFirstName(String firstName) {
            this.firstName = firstName;
        }
        public String getLastName() {
            return lastName;
        }
        public void setLastName(String lastName) {
            this.lastName = lastName;
        }

        public Person(){

        }

        public Person(String firstName, String lastName) {
            this.firstName = firstName;
            this.lastName = lastName;
        }    
}

main-Klasse

public class PersonWorker {

    public static void main(String[] args) {
        //TODO Auto-generated method stub

        EntityManagerFactory emf = Utility.setUpEntityManagerFactory();

        EntityManager em = emf.createEntityManager();

        em.getTransaction().begin();

            //create a Person
        Person bob = new Person( "Bob", "McRobb" );

        em.persist( bob );
        em.getTransaction().commit();
        em.close();
        emf.close();

    }

}

persistance.xml

<?xml version="1.0"?>
<persistence 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"
             version="2.0">

    <persistence-unit name="person" transaction-type="JTA">
        <provider>org.hibernate.ogm.jpa.HibernateOgmPersistence</provider>
       <class>com.ihappyk.model.Person</class>
        <properties>
            <property name="hibernate.ogm.datastore.provider" value="mongodb" />
            <property name="hibernate.ogm.datastore.database" value="hibernateOGM" />
            <property name="hibernate.ogm.datastore.host" value="127.0.0.1" />
            <property name="hibernate.ogm.datastore.port" value="27017" />
            <property name="hibernate.ogm.datastore.provider" value="org.hibernate.ogm.datastore.mongodb.impl.MongoDBDatastoreProvider"/>

            <property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.JBossStandAloneJtaPlatform"/>
        </properties>
    </persistence-unit>
</persistence>
Dieser gehört zu eclipse Projekt-management. Sollten Sie explizit markieren Sie Ihre persistence.xml Hinzugefügt werden, zu bauen.
Ya ich so konfiguriert haben, dass es in den build-Pfad des Projektes

InformationsquelleAutor ihappyk | 2015-07-01

Schreibe einen Kommentar