Я новичок в JPA & Hibernate. Прочитав некоторые онлайн-материалы, я теперь понимаю, что такое Hibernate и как его можно использовать с JPA.javax.persistence.PersistenceException: поставщик постоянства для EntityManager с именем customerManager
Теперь я пытаюсь запустить этот JPA & Hibernate tutorial. Я сделал все, что они упомянули в этом уроке.
У меня нет Oracle DB, только MySQL. Так что я сделал некоторые изменения в persistence.xml
используя мое понимание JPA & Hibernate (я не знаю, если это правильно или нет ... Мне кажется, что это.)
Вот мой persistence.xml
<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_1_0.xsd" version="1.0">
<persistence-unit name="customerManager" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>Customer</class>
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLInnoDBDialect"/>
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.connection.username" value="root"/>
<property name="hibernate.connection.password" value="1234"/>
<property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/general"/>
<property name="hibernate.max_fetch_depth" value="3"/>
</properties>
</persistence-unit>
</persistence>
Но я, похоже, не получаю информацию, которую они описывают. Это мне дает:
Customer id before creation:null
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named customerManager
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:55)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:33)
at CustomerDAO.create(CustomerDAO.java:8)
at CustomerDAO.main(CustomerDAO.java:22)
Любые предложения будут оценены.
Update:
Я сделал изменения, которые просят сделать. Но, все еще получая строки ошибки asme !!!
Они ничего не упомянули о orm.xml в этом учебнике. это может быть проблема.
Спасибо за ваш ответ. Но он все равно дает то же сообщение об ошибке. Исключение в потоке «main» javax.persistence.PersistenceException: нет поставщика устойчивости для EntityManager с именем customerManager – 2010-09-17 22:41:05
Еще раз спасибо за ваше обновление. Я добавил, что log4j.jar в папке lib, как они сказали в учебнике. Каков способ его инициализации? – 2010-09-17 23:28:19
@MaRaVan Вам нужно поставить 'log4j.свойства' на пути к классам. В этом примере приведен пример. –