2013-06-03 105 views
0

我有一個Maven輯陣模塊項目:彈簧自動裝配給空指針異常

  • 項目

    -ProjectDAO

    -Projectx

ProjectDAO使用spring + hibernate 從projectX創建我正在嘗試使用下面的內容:

public class TesMessage implements ITesMessage { 

@Autowired 
private IGlobal iGlobal; 
    ... 
    iGlobal.getSomeMethod(); 
} 

..有了上面的代碼,我得到空指針異常,我是否缺少任何東西?

我有這個在我的appContext.xml

<context:component-scan base-package="com.test.nty.dal"> 
    <context:include-filter type="annotation" 
    expression="org.springframework.stereotype.Repository" /> 
</context:component-scan> 

感謝

+0

向我們展示您的應用程序上下文 –

+0

您可以將'TesMessage'類放在'com.test.nty.dal'包中並向其添加'@ Repository'註釋嗎? – user1516873

+0

這兩個類位於我的應用程序的不同模塊中。提議的設計對我來說不起作用嗎? –

回答

0

相信例外:是的,你失去了一些東西。

您不顯示如何註釋IGlobal接口。這個例外表明它不受Spring的控制。您必須讓Spring應用程序上下文處理其創建以及TextMessage

我會質疑這個設計。我不明白爲什麼每個短信都需要全局的東西。看起來像是我的單身瓶頸。

+0

'TextMessage'在我的應用程序中只加載一次,因此幾乎沒有任何事情要做。請解釋一下是否可以做得更好:) –

+0

我的'IGlobal'注有'@ Repository' –

+0

我不明白爲什麼每個TextMessage都需要知道一個存儲庫。糟糕的設計 - 等待發生的循環依賴,因爲存儲庫需要了解TextMessage才能保留它們。我會重新考慮它。 – duffymo