• org.hibernate.HibernateException: Error applying BeanValidation relational constraints


    1、错误描述

    %%%% Error Creating SessionFactory %%%%
    org.hibernate.HibernateException: Error applying BeanValidation relational constraints
    	at org.hibernate.cfg.beanvalidation.BeanValidationIntegrator.applyRelationalConstraints(BeanValidationIntegrator.java:219)
    	at org.hibernate.cfg.beanvalidation.BeanValidationIntegrator.integrate(BeanValidationIntegrator.java:126)
    	at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:306)
    	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1744)
    	at com.you.hibernate.HibernateSessionFactory.<clinit>(HibernateSessionFactory.java:34)
    	at com.you.hibernate.dao.StudentDao.getStuInfo(StudentDao.java:45)
    	at com.you.hibernate.dao.StudentDao.main(StudentDao.java:67)
    Caused by: java.lang.reflect.InvocationTargetException
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    	at java.lang.reflect.Method.invoke(Method.java:606)
    	at org.hibernate.cfg.beanvalidation.BeanValidationIntegrator.applyRelationalConstraints(BeanValidationIntegrator.java:208)
    	... 6 more
    Caused by: org.hibernate.HibernateException: Unable to build the default ValidatorFactory
    	at org.hibernate.cfg.beanvalidation.TypeSafeActivator.getValidatorFactory(TypeSafeActivator.java:524)
    	at org.hibernate.cfg.beanvalidation.TypeSafeActivator.applyDDL(TypeSafeActivator.java:119)
    	... 11 more
    Caused by: javax.validation.ValidationException: Unable to instantiate Configuration.
    	at javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:272)
    	at javax.validation.Validation.buildDefaultValidatorFactory(Validation.java:111)
    	at org.hibernate.cfg.beanvalidation.TypeSafeActivator.getValidatorFactory(TypeSafeActivator.java:521)
    	... 12 more
    Caused by: java.lang.NullPointerException
    	at java.util.ResourceBundle.getBundle(ResourceBundle.java:1026)
    	at org.hibernate.validator.engine.ResourceBundleMessageInterpolator.loadBundle(ResourceBundleMessageInterpolator.java:202)
    	at org.hibernate.validator.engine.ResourceBundleMessageInterpolator.getFileBasedResourceBundle(ResourceBundleMessageInterpolator.java:182)
    	at org.hibernate.validator.engine.ResourceBundleMessageInterpolator.<init>(ResourceBundleMessageInterpolator.java:81)
    	at org.hibernate.validator.engine.ResourceBundleMessageInterpolator.<init>(ResourceBundleMessageInterpolator.java:73)
    	at org.hibernate.validator.engine.ConfigurationImpl.<init>(ConfigurationImpl.java:57)
    	at org.hibernate.validator.HibernateValidator.createGenericConfiguration(HibernateValidator.java:43)
    	at javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:269)
    	... 14 more
    二月 20, 2017 5:25:03 下午 org.hibernate.cfg.Configuration configure
    INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml
    二月 20, 2017 5:25:03 下午 org.hibernate.cfg.Configuration getConfigurationInputStream
    INFO: HHH000040: Configuration resource: /hibernate.cfg.xml
    二月 20, 2017 5:25:03 下午 org.hibernate.cfg.Configuration addResource
    INFO: HHH000221: Reading mappings from resource: com/you/hibernate/model/TScoreInfo.hbm.xml
    二月 20, 2017 5:25:03 下午 org.hibernate.cfg.Configuration addResource
    INFO: HHH000221: Reading mappings from resource: com/you/hibernate/model/TStudentInfo.hbm.xml
    二月 20, 2017 5:25:03 下午 org.hibernate.cfg.Configuration doConfigure
    INFO: HHH000041: Configured SessionFactory: null
    二月 20, 2017 5:25:03 下午 org.hibernate.cfg.Configuration$MappingsImpl addImport
    INFO: HHH000071: Duplicate import: com.you.hibernate.model.TScoreInfo -> com.you.hibernate.model.TScoreInfo
    二月 20, 2017 5:25:03 下午 org.hibernate.cfg.Configuration$MappingsImpl addImport
    INFO: HHH000071: Duplicate import: com.you.hibernate.model.TScoreInfo -> TScoreInfo
    %%%% Error Creating SessionFactory %%%%
    org.hibernate.InvalidMappingException: Could not parse mapping document from resource com/you/hibernate/model/TScoreInfo.hbm.xml
    	at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3409)
    	at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXmlQueue(Configuration.java:3398)
    	at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3386)
    	at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1341)
    	at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1731)
    	at com.you.hibernate.HibernateSessionFactory.rebuildSessionFactory(HibernateSessionFactory.java:73)
    	at com.you.hibernate.HibernateSessionFactory.getSession(HibernateSessionFactory.java:55)
    	at com.you.hibernate.dao.StudentDao.getStuInfo(StudentDao.java:45)
    	at com.you.hibernate.dao.StudentDao.main(StudentDao.java:67)
    Caused by: org.hibernate.DuplicateMappingException: Duplicate class/entity mapping com.you.hibernate.model.TScoreInfo
    	at org.hibernate.cfg.Configuration$MappingsImpl.addClass(Configuration.java:2574)
    	at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:172)
    	at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3406)
    	... 8 more
    Exception in thread "main" java.lang.NullPointerException
    	at com.you.hibernate.dao.StudentDao.getStuInfo(StudentDao.java:46)
    	at com.you.hibernate.dao.StudentDao.main(StudentDao.java:67)

    2、错误原因

    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
              "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
              "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
    <!-- Generated by MyEclipse Hibernate Tools.                   -->
    <hibernate-configuration>
    
    	<session-factory>
    		<property name="dialect">
    			org.hibernate.dialect.MySQLDialect
    		</property>
    		<property name="connection.url">
    			jdbc:mysql://127.0.0.1:3306/student
    		</property>
    		<property name="connection.username">root</property>
    		<property name="connection.password">root</property>
    		<property name="connection.driver_class">
    			com.mysql.jdbc.Driver
    		</property>
    		<property name="myeclipse.connection.profile">
    			Hibernatemysql
    		</property>
    		
    		<mapping resource="com/you/hibernate/model/TScoreInfo.hbm.xml" />
    		<mapping resource="com/you/hibernate/model/TStudentInfo.hbm.xml" />
    
    	</session-factory>
    
    </hibernate-configuration>

    3、解决办法

    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE hibernate-configuration PUBLIC
              "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
              "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
    <!-- Generated by MyEclipse Hibernate Tools.                   -->
    <hibernate-configuration>
    
    	<session-factory>
    		<property name="dialect">
    			org.hibernate.dialect.MySQLDialect
    		</property>
    		<property name="connection.url">
    			jdbc:mysql://127.0.0.1:3306/student
    		</property>
    		<property name="connection.username">root</property>
    		<property name="connection.password">root</property>
    		<property name="connection.driver_class">
    			com.mysql.jdbc.Driver
    		</property>
    		<property name="myeclipse.connection.profile">
    			Hibernatemysql
    		</property>
    		<property name="javax.persistence.validation.mode">none</property>
    		<mapping resource="com/you/hibernate/model/TScoreInfo.hbm.xml" />
    		<mapping resource="com/you/hibernate/model/TStudentInfo.hbm.xml" />
    
    	</session-factory>
    
    </hibernate-configuration>
           添加一句:<property name="javax.persistence.validation.mode">none</property>

  • 相关阅读:
    Tomcat 服务器体系结构
    tomcat的下载和启动
    tomcat解决端口号占用问题
    我的wmware
    Xshell的使用
    GCC的-wl,-rpath=参数
    Matlab图像处理(01)-Matlab基础
    CMake最好的学习资料
    使用valgrind进行内存泄漏和非法内存操作检测
    CLion提示can't find stdio.h等错误
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13313942.html
Copyright © 2020-2023  润新知