Ошибка развертывания приложения Seam 2.2 на JBoss 7.1

Я пытался развернуть свое приложение JBoss Seam 2.2 на JBoss 7.1. Я получил отличные советы и ресурсы от моего предыдущего post, но теперь я сталкиваюсь с некоторыми ошибками. Мое приложение использует Hibernate/JPA 1.0 для постоянства вместе с Hibernate Search. Когда дело доходит до развертывания JAR-файла в EAR, который содержит мои сущности JPA, я вижу следующее исключение:

ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC00001: Failed to start service jboss.persistenceunit."MyApp-ear.ear/MyApp-entities.jar#MyApp": org.jboss.msc.service.StartException in service jboss.persistenceunit."MyApp-ear.ear/MyApp-entities.jar#MyApp": Failed to start service
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1767) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [classes.jar:1.6.0_29]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [classes.jar:1.6.0_29]
    at java.lang.Thread.run(Thread.java:680) [classes.jar:1.6.0_29]
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: MyApp] Unable to build EntityManagerFactory
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:914)
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:889)
    at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:73)
    at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.createContainerEntityManagerFactory(PersistenceUnitServiceImpl.java:162)
    at org.jboss.as.jpa.service.PersistenceUnitServiceImpl.start(PersistenceUnitServiceImpl.java:85)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    ... 3 more
Caused by: org.hibernate.event.service.spi.EventListenerRegistrationException: Listener did not implement expected interface [org.hibernate.event.spi.PostUpdateEventListener]
    at org.hibernate.event.service.internal.EventListenerGroupImpl.checkAgainstBaseInterface(EventListenerGroupImpl.java:168)
    at org.hibernate.event.service.internal.EventListenerGroupImpl.internalAppend(EventListenerGroupImpl.java:175)
    at org.hibernate.event.service.internal.EventListenerGroupImpl.appendListener(EventListenerGroupImpl.java:109)
    at org.hibernate.ejb.event.JpaIntegrator.integrate(JpaIntegrator.java:137)
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:294)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1737)
    at org.hibernate.ejb.EntityManagerFactoryImpl.<init>(EntityManagerFactoryImpl.java:84)
    at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:904)

Я не видел никаких упоминаний об изменениях, которые мне нужно было внести для поддержки JPA 1.0 в ресурсах, которые были предоставлены мне в моем предыдущем вопросе. Кто-нибудь знает, что вызывает эту ошибку? Это связано с тем, что я использую Hibernate Search?

EDIT: я должен упомянуть, что версия Hibernate, которую я использую, связана с Seam 2.2. Это версия 3.3.1.


person Shadowman    schedule 23.03.2012    source источник
comment
У вас есть соответствующие спящие банки в EAR/lib?   -  person kosa    schedule 23.03.2012
comment
да. Я скопировал их из раздачи Seam.   -  person Shadowman    schedule 24.03.2012


Ответы (1)


Хорошо, я решил проблему. По-видимому, существует известная проблема с версиями Hibernate, Hibernate Search и Lucene, которые поставляются с Seam 2.2. Однако благодаря новым функциям загрузки классов в JBoss 7.x их было легко обновить. Я установил Hibernate 3.6.10 и соответствующие библиотеки Hibernate Search и Lucene, и это более или менее сработало. Мне пришлось внести в конфигурацию пару незначительных изменений, но они задокументированы в руководстве JBoss 7.1 JPA.

person Shadowman    schedule 24.03.2012
comment
Seam 2.3 будет совместим с Hibernate ORM 4.1 (входит в состав JBoss AS 7.1.2) и последними версиями Hibernate Search. - person Sanne; 31.03.2012
comment
Не могли бы вы перечислить точные версии Hibernate Search и Lucene, которые вы использовали, для тех из нас, кто попал в ад dll, пытаясь запустить Seam 2 на JB7? Спасибо!! - person idarwin; 05.05.2013