日期:2014-05-20  浏览次数:20716 次

JUnit运行错误,只报空指针异常。关于sessionFactory的错误。求高手解决!!!!!
下面的代码在用JUnit运行testSchemaExport()方法是,报错只有java.lang.NullPointerException,提示sessionFactory.close()错误,Console里面也没有任何信息...
而按照java application运行时就会报相应的错误:
A Foreign key refering com.aking.hibernate.model.Wife from com.aking.hibernate.model.Husband has the wrong number of column. should be 2
求解。。。。。。。。。。。
源代码如下:
Java code
package com.aking.hibernate.model;

import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;


public class HibernateORMappingTest {
    private static SessionFactory sessionFactory;
    
    @BeforeClass
    public static void beforeClass() {
        sessionFactory = new Configuration().configure().buildSessionFactory();
    }
    
    @AfterClass
    public static void afterClass() {
        sessionFactory.close();
    }
    
    @Test
    public void testSchemaExport() {
        new SchemaExport(new Configuration().configure()).create(false, true);
    }
    
    public static void main(String[] args) {
        beforeClass();
    }
}



------解决方案--------------------
你的session关闭了获不到值就会报这样的错误
------解决方案--------------------
看到你的方法的static有点不对劲,不要用静态试下,可能是这个问题
------解决方案--------------------
检查那两个实体类里面的外键设置
------解决方案--------------------
楼主的错误定位应该有问题的 这里面说的应该是你赋值的外键不匹配
或者你的外键配置本身有问题 要检查你的husband 和 wife 实体类的配置
------解决方案--------------------
@BeforeClass
public static void beforeClass() {
sessionFactory = new ActionConfiguration().configure().buildSessionFactory();
}