0

我收到下面的錯誤。但我無法找到錯誤是什麼。我如何找到確切的錯誤?

Caused by: java.lang.NullPointerException 
    at org.hibernate.cfg.Configuration.processFkSecondPassInOrder(Configuration.java:1481) 
    at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1419) 
    at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1375) 
    at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:717) 
    at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477) 
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417) 
    ... 91 more 

在此先感謝。

+1

它關係到一些配置 [1]:http://stackoverflow.com/questions/9302993/hibernate-throwing-nullpointerexception-processfksecondpassinorder – PSR 2013-03-16 10:26:25

回答

-2

該異常被稱爲NullPointerException,它表明您正在嘗試使用未創建的對象,這通常發生在您聲明對象時,忘記創建它並嘗試使用它。

+0

我非常懷疑的OP是休眠作者 – radai 2013-03-16 10:26:20

1

找到配置的源代碼,去行1481,則在該行使用的基準和基準爲空。

然後挖掘該引用是如何分配的,並追溯回來。

或者你可以調試它。

1

我只是偶然在這個問題上,並@ BlackJoker的建議雖然有點普通正是應該做什麼。

在我的情況下,誤差在休眠核發生:4.3.1.Final上線1499,但具有相同的錯誤。

該代碼嘗試解析和外鍵/映射。我有一個具有@OneToOne映射的實體,其類型不是所需的實體,而是字符串。

@Entity 
@Table(name = "MyTable") 
public class BrokenEntity { 

    @Id 
    @Column(name = "id") 
    private String flow; 

    @Id 
    @JoinColumn(name = "other_id") 
    @OneToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL) 
    private String group;// Now hibernate tries to map the String as entity and fails! 
} 

刪除映射或用有效的實體替換java.lang.String可以解決問題。

0
Caused by: java.lang.NullPointerException 
    at org.hibernate.cfg.Configuration.processFkSecondPassInOrder(Configuration.java:1481) 
    at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1419) 
    at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1375) 

該錯誤表示您將註釋放在缺少的對象上。例如:你把@JoinColumn轉換成private Car car但是Car對象無處可尋。