2012-07-13 59 views
0

我使用Hibernate 3.6.8.Final作爲部署在JBoss 4.3中的項目的一部分,發現以下堆棧跟蹤在啓動期間發佈:如何解決JBoss Hibernate 3.6.8.Final啓動異常(org.hibernate.validator.ClassValidator。<init>)

Caused by: org.hibernate.AnnotationException: java.lang.NoSuchMethodException: org.hibernate.validator.ClassValidator.<init>(java.lang.Class, java.util.ResourceBundle, org.hibernate.validator.MessageInterpolator, java.util.Map, org.hibernate.annotations.common.reflection.ReflectionManager) 
     at org.hibernate.cfg.Configuration.applyHibernateValidatorLegacyConstraintsOnDDL(Configuration.java:1681) ~[hibernate-core-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.cfg.Configuration.applyConstraintsToDDL(Configuration.java:1653) ~[hibernate-core-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1445) ~[hibernate-core-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1375) ~[hibernate-core-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1519) ~[hibernate-entitymanager-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:193) ~[hibernate-entitymanager-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:1100) ~[hibernate-entitymanager-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:689) ~[hibernate-entitymanager-3.6.8.Final.jar:3.6.8.Final] 
     at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:73) ~[hibernate-entitymanager-3.6.8.Final.jar:3.6.8.Final] 

我的項目是一個獨立的WAR,不依賴於JBoss進行持久化。

我能做些什麼來解決它?

回答

1

原來,它所需要的只是一點Hibernate魔法粉塵。 persistence.xml需要具有以下休眠屬性:

<property name="hibernate.validator.autoregister_listeners" value="false" /> 
<property name="hibernate.validator.apply_to_ddl" value="false" /> 

希望這可以幫助某人。

如果有人能解釋爲什麼我會很感激。

+0

請參閱http://stackoverflow.com/questions/3344389以獲得對相同問題的更詳細的回覆 – mdarwin 2015-08-10 09:57:09