pring与hibernate整合然后出现如下错误:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.HibernateException: Unable to get the default Bean Validation factory
Caused by: org.hibernate.HibernateException: Unable to get the default Bean Validation factory
Caused by: java.lang.reflect.InvocationTargetException
Caused by: org.hibernate.HibernateException: Unable to build the default ValidatorFactory
Caused by: javax.validation.ValidationException: Unable to instantiate Configuration.
Caused by: java.lang.NullPointerException
分析错误原因就是编译器无法识别和找到bean的validate包,但是,这个包确实存在的,然后根据查询发现hibernate有一个属性javax.persistence.validation.mode,这个属性默认是auto的,但是这样的话,编译器就无法识别了,所以需要我们手动设置一下,所以找到你的hibernate.cfg.xml文件,将这个属性加入进去。
<property name="javax.persistence.validation.mode">none</property>
加入后上述问题全部没有了,写的测试类,就好使了。