例外:buildSessionFactory - 在Hibernate App中

时间:2015-12-19 17:06:31

标签: java hibernate exception configuration

我正在使用Hibernate Framework开发电子商务应用程序。但我在执行过程中遇到了问题。测试程序抛出异常:

    Exception in thread "main" java.lang.ExceptionInInitializerError
    at HibernateUtil.buildSessionFactory(HibernateUtil.java:19)
    at HibernateUtil.<clinit>(HibernateUtil.java:9)
    at Test.main(Test.java:10)
Caused by: java.lang.NullPointerException
    at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.processFkSecondPassesInOrder(InFlightMetadataCollectorImpl.java:1708)
    at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.processSecondPasses(InFlightMetadataCollectorImpl.java:1617)
    at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:278)
    at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.build(MetadataBuildingProcess.java:83)
    at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:418)
    at org.hibernate.boot.internal.MetadataBuilderImpl.build(MetadataBuilderImpl.java:87)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:692)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:724)
    at HibernateUtil.buildSessionFactory(HibernateUtil.java:14)
    ... 2 more

我的HibernateUtil:

import org.hibernate.*;
import org.hibernate.cfg.*;

public class HibernateUtil {

    private static final SessionFactory sessionFactory = buildSessionFactory();

    private static SessionFactory buildSessionFactory() {
        try {
            // Create the SessionFactory from hibernate.cfg.xml
            return new Configuration().configure().buildSessionFactory();
        }
        catch (Throwable ex) {
            // Make sure you log the exception, as it might be swallowed
            System.err.println("Initial SessionFactory creation failed." + ex);
            throw new ExceptionInInitializerError(ex);
        }
    }

    public static SessionFactory getSessionFactory() {
        return sessionFactory;
    }

}

Hibernate.cfg.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration SYSTEM 
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
     <session-factory>
            <!-- local connection properties -->
            <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/ecom</property>
            <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
            <property name="hibernate.connection.username">root</property>
            <property name="hibernate.connection.password"></property>
            <property name="hibernate.connection.pool_size">10</property>

            <!-- dialect for MySQL -->
                <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>

            <property name="hibernate.current_session_context_class">thread</property>
            <property name="hibernate.show_sql">true</property>
            <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
            <property name="cache.use_query_cache">false</property>



            <mapping class="Metier.Category"/>
            <mapping class="Metier.Customer"/>
            <mapping class="Metier.CustomerOrder"/>
            <mapping class="Metier.orderedProduct"/>
            <mapping class="Metier.orderedProductID"/>
            <mapping class="Metier.Product"/>

      </session-factory>
</hibernate-configuration>

请告诉我异常的来源是什么。 欢呼声。

0 个答案:

没有答案