2010-05-06 185 views
1

我有一個Wicket Web頁面,我創建了一個新的對象A類: A a = new A(User u);setter注入guice + wicket

在A我想要setter注入,但是這實際上沒有完成。我聽說必須提供一個空的構造函數,但是怎樣纔能有一個非空構造函數和setter注入?

回答

1

我對Wicket並不熟悉,但我認爲你的Wicket網頁上有各種各樣的東西,註明@Inject,是的?

所以,你有幾個選擇;按優先順序排列:

  • 如果你@Inject荷蘭國際集團的User,一種選擇是標註的A構造與@Inject,然後在你的頁面,只是@Inject無論是一個AProvider<A>到網頁。
  • 您可以@Inject到你的網頁的MembersInjector<A>(稱之爲aMembersInjector),然後在您建立A對象調用aMembersInjector.injectMembers(a)導致所有的setter注入的情況發生。
  • 您可以將@Inject放入您的網頁Injector並在創建A後致電Injector.injectMembers(a)